首页 > 解决方案 > 如何使用 Mabox 和 Swift 检索我下载的离线地图包的列表?

问题描述

我想将离线地图功能添加到使用 Swift 和 Mapbox 构建的 iOS 应用程序中。下载地图区域包有很好的文档和示例,但我很难弄清楚如何检索离线包列表。他们在此处的文档提供了有关如何接收的说明:

“要检测共享脱机存储对象何时完成加载其包属性,请观察包键路径上的 KVO 更改通知。初始加载会导致 NSKeyValueChangeSetting 更改。”

但我很难找到任何关于这意味着什么的例子或解释。任何帮助将不胜感激!

标签: swiftmapboxmapbox-gl

解决方案


可以使用类的.packs属性检索所有已知离线包的数组MGLOfflineStorage。像这样:

MGLOfflineStorage.shared.packs

要访问这些包,您只需遍历数组或传递特定索引并从包中检索您感兴趣的任何信息。

在 SDK 的开源测试应用程序中,有一个使用此数组在设备上创建已完成离线包的表格视图的好示例(注意:此示例是用 Obj-C 编写的)。


⚠️ 免责声明:我目前在 Mabpox 工作⚠️


推荐阅读