一、問題描述及操作
應用集成Health Kit SDK后,在華為手機上進行登錄授權時,回傳錯誤碼50063,


1、查看相關錯誤碼,‘50063’在Health Kit錯誤碼中的描述是“安裝的HMS Core APK版本不匹配,無法呼叫介面,”提供的解決方案是“請安裝最新版本的HMS Core(APK)后,再呼叫介面”,

2、根據檔案中提供的解決方案,卸載了手機設備中的HMS Core APK,重新更新到最新版本后,仍回傳錯誤碼50063,
3、呼叫HuaweiApiAvailability#isHuaweiMobileServicesAvailable(Context context)介面,檢測HMS Core (APK)在設備上是否成功安裝和集成時,回傳結果1,表示在設備上沒有發現HMS Core(APK),預期結果應該回傳0,


4、使用‘adb logcat > log.txt’獲取完整日志,進行日志分析,
二、原因分析
在日志中篩選“HMSSDK_”,可以看到關鍵日志“E/HMSSDK_X509CertUtil: Not include alias 052root”,

根據日志顯示,是因為hmsrootcas.bks證書中沒有發現052root資訊,導致校驗失敗,從而引起登錄失敗,正常情況下,如果使用Maven倉集成SDK時,此hmsrootcas.bks證書檔案會在打包時自動放到apk的assets目錄下,一般不會出現問題,
如果沒有日志,也可以借助工具查看APK中的hmsrootcas.bks是否包含052root:

三、解決方案
1、檢查專案工程中的assets資源檔案目錄中是否存在hmsrootcas.bks檔案,如果存在的話,可以洗掉,在打包時hmsrootcas.bks會自動打包到apk中,
2、如果assets資源檔案目錄中不存在hmsrootcas.bks檔案或洗掉后,仍出現此問題,可以手動集成包含052root資訊的bks檔案,具體操作如下:
1)訪問鏈接,下載SDK檔案,

2)解壓下載的檔案,根據以下路徑找到bks檔案,并集成到專案主工程下的assets中:hmssdk-eclipse-6.9.0.300\Security-ssl\assets,僅放置hmsrootcas.bks檔案即可,


3)重新編譯專案,
更多接入華為運動健康服務常見問題,請參見FAQ
了解更多詳情>>
訪問華為開發者聯盟官網
獲取開發指導檔案
華為移動服務開源倉庫地址:GitHub、Gitee
關注我們,第一時間了解 HMS Core 最新技術資訊~
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/547858.html
標籤:Android
上一篇:掃一掃,原來這么簡單
