Sometimes you are chaning .mif files, but Symbian still shows the old content.
The reason is simple: there's AknIconSrv.exe which caches them.
If you clear icon cache you:
- get more RAM
- can replace widgets, avkon2, app icons and other .mif files on the fly
You CAN'T:
clearing icon cache doesn't cause automatically redrawing EVERYTHING, this means you have to remove and re-add .e.g. a widget or shortcut on homescreen to see the new one.
killing ailauch.exe (homescreen process) does solve this, but also creates a lot of bugs.
Clearing icon cache itself is a simple thing, you can find it e.g. in Nokia R&D filebrowser.
1. in your project file add:
LIBS +=-laknicon #libary which contains the needed class AknIconConfig
TARGET.CAPABILITY += WriteDeviceData #Symbian Plattform Security, we all love you
2. in your implementation include:
#include <akniconconfig.h> //header of AknIconConfig class
3. the code:
AknIconConfig::EnableAknIconSrvCache(EFalse);
AknIconConfig::EnableAknIconSrvCache(ETrue);
it simply disables the icon cache (what does clear it) and re-enables it.
In theory you can disable it always, but than your phone will reload .mif files all the times what's bed for the performance (a lot of IO operations).
sources:
http://www.symlab.org/main/documentation/reference/s3/pdk/GUID-66401841-EEC8-373D-AF0E-4AA9A771325E.htmlhttp://developer.nokia.com/Community/Discussion/showthread.php/196435-Problem-in-displaying-Application-Icon!