本帖最后由 小溪儿1988 于 2016-1-7 13:37 编辑
使用2.7.0(或以前)下载的离线地图,升级到3.x之后不能使用了。因为他们完全不一样了,无论是文件大小还是目录结构全都不一样。那么问题来了,升级之后要怎么才能知道2.7.0有下载哪些离线城市呢? 先看一下2.7.0的离线下载,打开Demo开始下载 北京和上海 下载完成之后到本地去看一下,这里面有两个文件,mini_mapv3这里面是缓存文件,VMAP2里面是每个城市的下载信息,包括下载进度啊之类的,使用的是json字串。(下载进度还有一个地方存放得更详细,在数据库中,后面会提到。) 进入 mini_mapv3看一下,130322等等一堆东西,就是地图缓存数据,就是下载的离线地图解压出来的东西,最下面的连个文件,是离线地图的配置文件,里面有版本号之类的东西。
还有一个地方会记录离线地图的下载情况,而且更详细,包括下载进度,下载状态以及每个城市对应的缓存文件(仅限离线地图,路口放大图那些不在这里面) 使用数据库查看工具(SQliteEdit 可以直接从网上下载),打开看看。 可以看到有两个数据库,logdb.db是一些日志记录,不用理会,还有一个offline.db这个就是离线地图的记录(3.x的数据库名字叫做offlineDbV.db 所以只要不卸载,单纯的覆盖安装的话,offline.db这个文件是不会被删掉的。) 打开瞅一眼 有一堆东西,一一看一下,前两个每个数据库都有,就不管了看后三个 Update_item 每个城市的adcode 下载进度,下载链接,大小状态等等 最全面的一个 Update_item_download_info 断点续传的进度记录,2.7.0应该是分5块下载 Update_item_file解压后每个城市离线文件对应位置,标识是adcode
然后重点来了,现在需要做的就是从数据库中读取文件就行了,直接上代码 运行结果为了简便使用打印输出 示例代码见下边
|