華為手機(jī)應(yīng)用安裝錯誤碼分析匯總

來源: 華為開發(fā)者論壇
作者:Mayism
時間:2021-02-04
21209
在應(yīng)用開發(fā)過程中經(jīng)常會遇到應(yīng)用安裝失敗的問題,今天就給大家分析一下一些華為手機(jī)上主要的安裝錯誤碼,幫助大家快速的解決應(yīng)用安裝問題。

在應(yīng)用開發(fā)過程中經(jīng)常會遇到應(yīng)用安裝失敗的問題,今天就給大家分析一下一些華為手機(jī)上主要的安裝錯誤碼,幫助大家快速的解決應(yīng)用安裝問題。

1.    該安裝包無效或不完整、該安裝包與操作系統(tǒng)不兼容(錯誤碼:-2)

原因分析:三方應(yīng)用上架時上傳了無效安裝包

解決辦法:上傳正確的安裝包

2.    存儲空間不足(錯誤碼:-4)

原因分析:應(yīng)用安裝時空間不足

解決辦法:清理手機(jī)空間,可以搜索手機(jī)管家,進(jìn)入手機(jī)管家的清理加速

3.    手機(jī)上有相同包名應(yīng)用(錯誤碼:-5)

原因分析:華為應(yīng)用新舊包名替換,手機(jī)上已經(jīng)安裝新包名,舊包名apk不能安裝

解決方法:修改為應(yīng)用的包名為新包名

4.    更新不兼容(錯誤碼:-7)

原因分析:安裝的應(yīng)用與手機(jī)上的應(yīng)用包名相同但是簽名不相同

解決方法:修改打包的簽名為上個版本的簽名

5.    共享用戶不兼容(錯誤碼:-8)

原因分析:應(yīng)用為ShareUid應(yīng)用,應(yīng)用與已經(jīng)安裝的ShareUid應(yīng)用簽名不一致導(dǎo)致安裝失敗。

解決辦法:與已有的ShareUid應(yīng)用簽名保持一致

6.    共享庫已丟失(錯誤碼:-9)

原因分析:應(yīng)用依賴了系統(tǒng)不存在的共享庫,最常見的是google map library導(dǎo)致安裝失敗

解決方法:建議應(yīng)用集成HMS以避免google map library產(chǎn)生的問題。

7.    應(yīng)用組件的命名與已安裝應(yīng)用有沖突(錯誤碼:-13)

原因分析:應(yīng)用定義的ContentProvider與手機(jī)上已經(jīng)安裝的應(yīng)用沖突

如何確定與什么應(yīng)用沖突:

1.查看日志,找到安裝失敗回調(diào)

2020-12-26 09:39:06.589[PackageManager/InstallResultReceiver][INFO]main{1}  package install callback:packageName:[com.MobileTicket],statusCode:[5],extraStatus:[INSTALL_FAILED_CONFLICTING_PROVIDER: Scanning Failed.: Can't install because provider name com.mpaas.demo.nebula.provider (in package com.MobileTicket) is already used by com.hanweb.hnzwfw.android.activity],otherPkgName:[null],storagePath:[null],resultCode:[-13]

2.adb指令拿到出問題手機(jī)上所有的ContentProvider定義,查看哪個應(yīng)用跟要安裝的應(yīng)用沖突了。

adb shell dumpsys package providers >d:/temp/provider.txt

解決方法:

卸載手機(jī)上ContentProvider 中Provider Authorities相同的應(yīng)用以解決沖突問題

8.    應(yīng)用與此設(shè)備的CPU不兼容(錯誤碼:-113、-16)

原因分析:應(yīng)用打包未針對特定cpu版本進(jìn)行適配

解決方法:應(yīng)用需要兼容對應(yīng)cpu類型。

9.    應(yīng)用驗證超時(錯誤碼:-21)& 應(yīng)用驗證失敗(錯誤碼:-22)

原因分析:手機(jī)自動到google play 商店校驗應(yīng)用是否合法,訪問過程中網(wǎng)絡(luò)連接超時,正常發(fā)貨手機(jī)不會主動去google play商店校驗,除非用戶主動升級了google play商店或者用戶下載的某個應(yīng)用去升級了google play商店,導(dǎo)致去校驗超時。

解決方法:

1.到手機(jī)中設(shè)置—應(yīng)用—應(yīng)用管理---找到界面菜單鍵 點擊顯示系統(tǒng)應(yīng)用---找到google play 商店 --- 找到卸載按鈕或者界面中菜單按鈕點擊卸載更新 -----卸載完成如果界面上顯示停用應(yīng)用點擊停用(沒有則不用設(shè)置)

2. 設(shè)置---Google---安全----goole play保護(hù)機(jī)制 里面的開關(guān)是否開啟了,如果開啟則全部關(guān)閉。

0900086000150224722.20210203174220.64983945770654183075419806139412.png

10.  系統(tǒng)已經(jīng)存在較高版本,此安裝包無法安裝(錯誤碼:-25)

原因分析:android是多用戶機(jī)制,這個地方可能存在子用戶、隱私空間有高版本的應(yīng)用存在導(dǎo)致不能安裝,并且是用戶參加過眾測之類的活動導(dǎo)致安裝了比較高的版本

解決方法:查看子用戶和隱私空間中有沒有對應(yīng)的高版本,如果有,卸載高版本的應(yīng)用后再安裝

11. 解析失?。ㄥe誤碼:-102)

原因分析:安裝包打包錯誤導(dǎo)致解析失敗

解決方法:在華為應(yīng)用市場安裝請找華為應(yīng)用市場開發(fā)人員定位(找到日志中下載路徑,通過電腦瀏覽器下載apk,通過adb安裝看是否同樣報錯),其他渠道安裝聯(lián)系其他渠道人員定位

12. 安裝包未包含任何證書(錯誤碼:-103)

原因分析:安裝包中沒有證書,安裝包試內(nèi)側(cè)用戶專屬包,定向發(fā)送給用戶。

解決辦法:需要開發(fā)者添加證書。

13. 未知錯誤(錯誤碼:-111)

原因分析:只有華為應(yīng)用安裝不了,其他應(yīng)用正常安裝,或者其他應(yīng)用也不能安裝,設(shè)備是定制設(shè)備不能隨便安裝應(yīng)用

解決辦法:此設(shè)備可能是鼎橋雙系統(tǒng)警務(wù)通的機(jī)型,需要聯(lián)系鼎橋熱線反饋問題。

14. 應(yīng)用定義的權(quán)限與系統(tǒng)已有應(yīng)用的權(quán)限沖突(錯誤碼:-112)

原因分析:安裝的應(yīng)用與手機(jī)已經(jīng)安裝的應(yīng)用定義權(quán)限有沖突,詳細(xì)分析中有顯示沖突的已安裝應(yīng)用是哪個

0900086000150224722.20210203174236.47898160389879708119468670843900.png

解決方法:需要開發(fā)者修改自定義權(quán)限

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于華為開發(fā)者論壇,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多