MBTiles 文件有大小限制吗?
Is there a size limit to a MBTiles file?
我们最近升级了离线应用中的地图文件以支持额外的缩放级别,但现在应用无法在原始文件夹中找到资源。
之前的地图是550MB左右。
新的是1.2GB。
应用程序现在在这一行崩溃:
InputStream is = getResources().openRawResource(R.raw.fire_map);
logcat中的这一行:java.lang.RuntimeException: Unable to start activity ComponentInfo{org.ir.mobilemap/org.ir.mobilemap.IRMobileMapActivity}: android.content.res.Resources$NotFoundException: File res/raw/fire_map.mbtiles from drawable resource ID #0x7f060003
我测试了很多次都没有发现问题,恢复到旧地图工作得很好。是否有任何我不知道的限制,或者是其他地方的问题?
您可能已达到 APK 文件大小上限。你可能可以编译打包,但阅读它可能不行。
几个解决方案:
- 减小数据库大小
- 在应用程序启动时将文件内容从原始存储复制到本地存储,然后从文件系统访问数据库。这对你的情况不起作用,因为你无法打开文件
- 安装应用后将数据库下载到本地存储。
我们最近升级了离线应用中的地图文件以支持额外的缩放级别,但现在应用无法在原始文件夹中找到资源。
之前的地图是550MB左右。
新的是1.2GB。
应用程序现在在这一行崩溃:
InputStream is = getResources().openRawResource(R.raw.fire_map);
logcat中的这一行:java.lang.RuntimeException: Unable to start activity ComponentInfo{org.ir.mobilemap/org.ir.mobilemap.IRMobileMapActivity}: android.content.res.Resources$NotFoundException: File res/raw/fire_map.mbtiles from drawable resource ID #0x7f060003
我测试了很多次都没有发现问题,恢复到旧地图工作得很好。是否有任何我不知道的限制,或者是其他地方的问题?
您可能已达到 APK 文件大小上限。你可能可以编译打包,但阅读它可能不行。
几个解决方案:
- 减小数据库大小
- 在应用程序启动时将文件内容从原始存储复制到本地存储,然后从文件系统访问数据库。这对你的情况不起作用,因为你无法打开文件
- 安装应用后将数据库下载到本地存储。