I already posted a question here: Android - How to improve osmdroid offline map performance in term of reponse time And the solution was using .gemf file.
Now instead of using .zip file, I'm using .gemf file (~200MB: zoom level 12-17, .PNG).
It takes around 1.50second to initialize my map with zoom level 16.
Android 4.4.2 - 1.3GHz cortex quadcore - 1GB Ram - NO Google Play Services.
Maybe there are some way to improve its performance? Like moving .gemf file to internal memory (then how to configure in android?) or something else?
An alternative is to put your tiles files directly at the location expected by osmdroid caching system.
Unzip your zip file, add ".tiles" extension to all tiles files, and put the whole unzipped directory inside osmdroid/tiles/" dir.
If you already used osmdroid with an online tile source on your device, this directory already exists.
Another solution is to use OSMBonusPack CacheManager.