問題現(xiàn)象
項(xiàng)目開發(fā)的游戲提交華為AGC后臺(tái)自檢時(shí),報(bào)錯(cuò)如下:
錯(cuò)誤28:將HMS SDK assets目錄拷貝到應(yīng)用工程根目錄。
問題原因
聯(lián)系華為技術(shù)支持了解到(可以通過提工單聯(lián)系https://developer.huawei.com/consumer/en/support/feedback),這條規(guī)則應(yīng)該是我們打包后的項(xiàng)目中沒有檢測(cè)到任何*.bks相關(guān)的證書文件。*表示通用證書名稱。
我們也可以自己檢查下,比如通過反編譯工具反編譯我們的包,查看如下路徑是否有相關(guān)*.bks文件。比如下面的截圖,表明有相關(guān)證書文件。
缺失*.bks相關(guān)證書的影響
正常業(yè)務(wù)下,當(dāng)我們應(yīng)用調(diào)用華為HMS SDK提供的相關(guān)業(yè)務(wù)接口,比如登錄、支付等,當(dāng)玩家手機(jī)上沒有安裝或者安裝的HMS Core APK應(yīng)用不滿足版本號(hào)要求時(shí),我們應(yīng)用會(huì)彈出安裝或升級(jí)HMS Core的提示框。
如果我們應(yīng)用包中缺失*.bks相關(guān)證書,會(huì)導(dǎo)致無法彈框,影響業(yè)務(wù)正常功能。
問題解決
如果您的項(xiàng)目是通過:
Android Studio使用maven倉(cāng)方式,一般是不需要手動(dòng)操作的,打包時(shí)如果發(fā)現(xiàn)沒有相關(guān)證書文件,會(huì)自動(dòng)打包到Apk的assets目錄下。
Eclipse通過本地下載SDK包集成,是需要手動(dòng)操作的。相關(guān)bks文件均放置在HMS Base SDK,可以參考文檔自檢,或手動(dòng)將HMS Base SDK各個(gè)文件夾assets目錄下的.bks文件拷貝到應(yīng)用工程根目錄下。
https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/appgallerykit-sdk
我們項(xiàng)目就是使用eclipse集成的,最后按照華為技術(shù)支持的建議處理后,自測(cè)反編譯后的包目錄下含有相關(guān)bks文件,再次提交自檢,通過。