getMapPackageAtGeoCoordinates:只需要1的值作为参数。我已经NMAGeoCoordinates一个长长的清单,我正在寻找一种方式来获得“包标识”没有做多次调用(或使用边框作为参数)
UPDATE
我的iOS应用具有路由列表(数百人),各航线有多个中间点。对于每个路由应该是可能的地图数据离线下载。我使用这个API:https://developer.here.com/documentation/ios-premium/dev_guide/topics/maps-offline-maploader.html
我没有使用基于NMAMapDataPrefetcher因为我需要在安装的软件包控制另一种方法。
因此,考虑NBA地理坐标我需要得到尽可能NMAMapPackage的列表,下载列表。
我不能使用启动或目的地的坐标,因为每个路径可以包括多个国家。
我不能叫getMapPackageAtGeoCoordinates多次获得包含在路线可能国家的完整列表(这是许多电话,几十每条路线的顺序)
所以,我不知道是否有更好的方法来解决这个问题,也许使用边界框来获取所有包含在路线NMAMapPackage。我也查了REST API:
https://developer.here.com/documentation/routing/topics/resource-calculate-route.html
看起来有一种方法来计算路线,并得到国家的总结走过,usign的RouteAttributeType“summaryByCountry”。响应包括场“国家”使用ISO 3166-1-α-3格式,但有没有办法这个值转换为NMAMapPackage ID。
有除非你描述接收NMAMapPackage使用地理坐标没有别的办法。
这是使用包围盒来下载他需要没有多次调用区域的唯一途径。
@interface NMAGeoBoundingBox : NSObject<NSCoding>
+ (nullable instancetype)geoBoundingBoxContainingGeoCoordinates:(nonnull NSArray<NMAGeoCoordinates *> *)coordinates
@interface NMAMapDataPrefetcher : NSObject
- (NSInteger)fetchMapDataForBoundingBox:(nonnull NMAGeoBoundingBox *)boundingBox
error:(NMAPrefetchRequestError *_Nullable)error
NS_SWIFT_NAME(fetchMapDataForBoundingBox(_:error:));