强制MapKit仅使用缓存的地图图块/以编程方式禁用网络

Sla*_*TLM 11 iphone google-maps mapkit mkmapview

我们偶然发现了这样的问题.

我们正在开发一个旅行应用程序.为了确保用户不会在我们的应用程序中花费太多钱来漫游费用,我们决定为用户实现一个设置选项,仅用于查看缓存的地图.因此,我们让用户决定是否要从互联网加载地图,或者他想省钱并查看缓存地图(存储在Library/Caches/MapTiles/MapTiles.sqlitedb中).

我们找不到实现这个的方法.在这种情况下,有没有办法以编程方式禁用网络?或者强制MapKit仅使用缓存切片?我们考虑过以编程方式为此选项更改APN以强制MapKit脱机.是否有可能以编程方式更改APN?

谢谢!

Noa*_*oon 4

iPhone SDK 应用程序无法访问网络适配器设置,而且我不知道 MapKit API 中没有任何内容可以让您控制其互联网使用。在这种情况下,最好的选择可能是显示警报,建议用户启用飞行模式或关闭数据漫游。