just noticed commit http://gpsmid.git.sourceforge.net/git/gitweb.cgi?p=gpsmid/GpsMid;a=commitdiff;h=3662bcdb078f2d93899762d3533f3f6f1a230ca0 and I'm wondering why you don't remove unused icon sizes. IMHO for GpsMid the same mechanism as for J2ME should be applied and the unused icon sizes removed, while the used ones get renamed to the normal icon file names.
The idea is in the future to have icon sizes switchable at run-time rather than map generation time, see getIconPrefix() in Configuration. Partly that's based on map generation not being available, partly on the viewpoint that resources are usually not as scarce on Android devices as on J2ME devices, and it's not too bad to carry a bit of choice even if it's not needed.
The acute reason for the commit was to make Osm2GpsMid work properly, as it was dropping the huge_* icons Android needs. For consideration of space questions, would have been good just to rename huge_* to icons and drop the others, but that would have required reworking of the runtime. And with current code, would make sense to drop other icons than huge.
However, I haven't followed the scaling & caching code - might be that as we can scale icons at run-time, different size icons are not required to be in the apk to be able to show different size icons.
> However, I haven't followed the scaling & caching code - might be that as we can scale icons at run-time, different size icons are not required to be in the apk to be able to show different size icons.
Well, the icon menu icons are not cached, but scaled everytime for the current screen size, either up or down from the included icon size. Therefore I don't expect anything other than huge icons to be necessary on Android.
On the other hand reading from your crash reports mostly images/icons seem to have been involved so it might well be those image manupulation operations are quite memory intensive on Android and it might be a bit better with scaling from a lower resolution source image.