更新记录
1.0(2023-07-19)
新版发布
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 14.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | 适用版本区间:9 - 17 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
高德离线地图uniapp原生插件接口说明
集成准备
- 从高德获得Android和ios端的appkey。
- manifest.json中App模块配置,勾选Maps(地图)中的高德地图模块,并配置appkey。
- 制作uniapp自定义调试基座,运行到手机设备进行调试。注:1: appkey如有更改,必需要重新制作自定义基座,2:appkey与App的包名、签名证书的SHA1要对上,3: 基座打包完成后,建议卸载基座后重新运行安装基座调试。
接口说明
- 优先弹框让用户进行合规确认并调用合规接口
- 初始化sdk,获取/下载相关回调都是初始化传入到回调传回对应数据,根据result.event判断是对应到回调, 事件就是调用函数加来前缀“on”,例如 getDownloadOfflineMapCityList() ,回调event为 onGetDownloadOfflineMapCityList,对应到数据为result.offlineMap
- 定位数据是通过startLocationService传入到回调对象回调
接口及参数
- 离线地图下载管理/定位插件对象
var pluginImplss = uni.requireNativePlugin("AMap-OfflineMap");
合规
共两个接口,必需要让用户进行授权与确认,将确认结果传入。调用后才能调用其他接口
pluginImplss.updatePrivacyShow(true,true);
pluginImplss.updatePrivacyAgree(true);
权限
存储权限需要动态申请
初始化
离线下载相关到获取调用都是init传入到对象回调
pluginImplss.init(function(result){
console.log(result);
//result.event判断对应到响应数据,规则是on+调用函数名
//下载响应result.event == 'onDownload'
//检查更新 result.event == 'onCheckUpdate'
//result.offlineMap就是对应到数据
});
获取已下载的离线地图列表
pluginImplss.getDownloadOfflineMapCityList()
获取城市列表
pluginImplss.getOfflineMapCityList()
获取省列表
pluginImplss.getOfflineMapProvinceList()
取正在或等待下载的城市列表
pluginImplss.getDownloadingCityList()
根据城市Code下载离线包(citycode)
pluginImplss.downloadByCityCode(citycode)
根据城市名称下载离线包(cityname)
pluginImplss.downloadByCityName(cityname)
删除已下载的地图包
pluginImplss.remove(name)
检查离线地图数据是否存在更新
pluginImplss.updateOfflineCityByName(name)
通过省份名称下载地图列表
pluginImplss.downloadByProvinceName(name)
暂停下载
pluginImplss.pause()
停止下载
pluginImplss.stop()