問題描述
項目集成了華為HMS Core SDK 4.x版本的IAP等服務,提交審核后,華為駁回:應用在安裝了低于2.5.3版本的華為移動服務手機上啟動或調用支付時無法拉起升級提示。
問題復現手段
找了一個華為手機,手機上設置>應用>應用管理中搜索華為移動服務或HMS Core這個APK ,點擊進去后,右上角有個按鈕,可以選擇卸載更新,結果發(fā)現無法卸載更新到2.5.3版本的HMS Core 。因為無法構造條件,所以聯系了下華為技術支持溝通。
技術答復,該類安裝了低于2.5.3版本的華為移動服務問題,復現方法替代如下一種:
找個華為手機,參考上面操作卸載更新
如果華為手機無法卸載HMS Core至2.5.3以下版本,可以找個非華為手機,直接將HMS Core卸載了測試
如果華為手機是root過的,可以直接將HMS Core卸載了測試。
問題分析&解決
1.分析日志:選擇一臺非華為手機,卸載華為移動服務之后,支付確實沒提示升級,抓日志分析到日志報錯如下:
2.搜錯誤碼:在華為官方文檔中直接搜索了這個錯誤碼,發(fā)現確實可以搜索到,因為搜索到的比較多,注意篩選下是應用內支付服務的。
3.查看文檔描述:進入文檔后,發(fā)現如下信息,檢查項目代碼,還真是這個細節(jié)處理錯誤,我們項目中引入的是上下文,不是活動,也難怪錯誤提示信息說找到活動。
修改后問題即得到了解決。