init method
设置ios端的key, android端需要在manifest里面设置, 无法通过代码设置
Implementation
static Future init(String iosKey) async {
// 加载asset相关信息, 供区分图片分辨率用, 因为native端的加载asset方法无法区分分辨率, 这是一个变通方法
_assetManifest =
await rootBundle.loadStructuredData<Map<String, List<String>>>(
'AssetManifest.json',
(String jsonData) {
if (jsonData == null)
return SynchronousFuture<Map<String, List<String>>>(null);
final Map<String, dynamic> parsedJson = jsonDecode(jsonData);
final Iterable<String> keys = parsedJson.keys;
final Map parsedManifest = Map<String, List<String>>.fromIterables(
keys,
keys.map<List<String>>((key) => List<String>.from(parsedJson[key])),
);
return SynchronousFuture<Map<String, List<String>>>(parsedManifest);
},
);
return platform(
android: (releasePool) async {
print('android端需要在Manifest里面设置');
},
ios: (releasePool) async {
final service = await AMapServices.sharedServices();
await service.set_apiKey(iosKey);
await service.set_enableHTTPS(true);
},
);
}