1.問題描述:
使用華為內置的MapComponent, 發現顯示不出來。查看日志, MapRender底層有報錯。
解決方案:
麻煩按以下步驟檢查下地圖服務,特別是簽名證書指紋那部分。
1.一般沒有展示地圖,可能和沒有配置SHA256指紋證書配置,網絡,定位權限,沒有打開地圖服務等有關系,如果剛配置完權限等,需要24h生效,(可以將手機系統時間往后設置24h)。
2.module.json5文件中 metadata節點下 clientid 寫正確—需要在里面直接寫client_id的信息,不能通過$符引用資源文件中的值,當前無法解析這種引用方式;
3.需要開發者檢查一下當前的簽名證書指紋是否也是自動簽名的,需要改成手動簽名且需要和AGC上配置的證書指紋一致
簽名證書使用 這個選項中的 配置方式 “選擇SHA256公鑰指紋‘’
a、生成配置指紋:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-preparations-0000001727885250#section388942317518
b、配置證書指紋:https://developer.huawei.com/consumer/cn/doc/app/agc-help-signature-info-0000001628566748#section5181019153511
可以重點檢查一下 clientid 以及 AGC平臺配置的證書指紋是否是手動生成, 打包時使用的證書是否與AGC平臺上配置的一致;
2.問題描述:
區劃選擇提示map權限 ,但在appGallery網頁中已經開啟了map權限,還需要什么權限?
解決方案:
如果已經開通了權限,可能有緩存,需要通過USB接口連接測試設備,按照以下步驟操作配置并清下緩存:
1、清除鑒權 緩存
hdc shell rm -rf /data/service/el1/public/cloud_interface_auth/scopecache/*
2、終止鑒權進程
hdc shell
ps -ef | grep auth,獲取cloud_interface_auth 的PID如34639
kill -9 34639,將SA進程停止以清理緩存。
3、清除demo和mapservice緩存數據然后開始測試
hdc shell bm clean -n 應用包名(如com.huawei.maps.demoA) -d
hdc shell bm clean -n 應用包名(如com.huawei.maps.demoA) -c
hdc shell bm clean -n com.huawei.hms.mapservice -d
hdc shell bm clean -n com.huawei.hms.mapservice -c
3.問題描述:
js地圖設置語言為中文,導航返回的還是英文
解決方案:
js語言設置mapOptions的fmapOptions.language=‘CHI’;中language為小寫;中文簡體值是:CHI
參考鏈接:https://developer.huawei.com/consumer/cn/doc/HMSCore-References/js-hwmap-0000001050990165#section12313153115171
4.問題描述:
如何拉起地圖類應用,可以讓用戶選擇花瓣地圖或者高德地圖等并傳入當前位置和目的地位置的經緯度進行導航?
解決方案:
開發者好,可通過Want拉起Petal 地圖應用
詳細可參考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/map-petalmaps-V5#section116043716599
拉起高德地圖可參考https://developer.huawei.com/consumer/cn/doc/sdk-gallery-guides/eco-sdk-map-gaode-ditu-0000001787589728
5.問題描述:
調用sceneMap.queryLocation方法報無權限,可是后臺配置已勾選,地圖無法顯示
解決方案:
此錯誤碼代表1002600004 三方應用沒有開通地圖服務權限,建議排查以下原因:
1、https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/map-config-agc-V5是否已開通地圖服務
2、檢查一下 module.json5中的 client_id與AppGallery Connect中的client_id是否一致。如果一致的話可以將手機往后調24小時再試一下
3、是否是手動簽名:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/application-dev-overview-V5
4、配置client_id的value時,不能通過resource中的值配置(例如$media.icon),請直接寫入client_id的值。如:“value”: “109920437”
6.問題描述:
Map如何在屏幕上全部顯示出來所有的Marker點?
解決方案:
可以添加多個Marker,使用MapComponentController.addMarker接口,返回添加的marker實例 https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/map-map-V5#section0810361284
顯示多個marker可以參考
marker自定義信息窗,請參考鏈接https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/map-marker-V5