Pixelated image and crash on some devices
Hi, I tested worldmap and am using it in a project to display a big picture.
When I test your latest code on a Galaxy S3, I can reproduce an bug:
- un-zoom quickly to the minium zoom level with a pinch gesture
- zoom quickly on a country of the map.
- you will see that the country is pixelated and is never filled with the high resolution data. And you will experience an app crash some seconds after. (try this manipulation a few times if no problem detected)
It's like the cache is not re-computed.
I can reproduce this bug on Galaxy S3, GalaxyS2 and Galaxy Ace.
I will investigate the issue but if you have any idea it would be very welcomed.
I notice that I've got these errors in the logcat: E/dalvikvm-heap(19564): Out of memory on a 38047104-byte allocation. E/InputStreamScene(19564): caught oom -- cache now at 0 percent.
I also notice these errors: SKIA FimgApiStretch:stretch failed But by browsing online, I can read that is only due to the Samsung phone.
Hmm, I have access to a galaxy note II, I'll see if I can repro it there, but I won't be able to do it until next week.
However, generally OOMs are the kiss of death. There is some logic to try to stop the app from actually dying, but it I have never been able to fully recover from one.
After further investigation, I can say that indeed, once this OutOfMemory error appears, the app stops working as it should and crashes a few seconds later. The more your device is powerful, the less this OOM will show. For example I cannot reproduce on Nexus 4 running latest Android.
I "fixed" my problem by reducing the size of the image but couldn't investigate more the OOM issues.