在应用开发过程中经常会遇到应用安装失败的问题,今天就给大家分析一下一些华为手机上主要的安装错误码,帮助大家快速的解决应用安装问题。
1. 该安装包无效或不完整、该安装包与操作系统不兼容(错误码:-2)
原因分析:三方应用上架时上传了无效安装包
解决办法:上传正确的安装包
2. 存储空间不足(错误码:-4)
原因分析:应用安装时空间不足
解决办法:清理手机空间,可以搜索手机管家,进入手机管家的清理加速
3. 手机上有相同包名应用(错误码:-5)
原因分析:华为应用新旧包名替换,手机上已经安装新包名,旧包名apk不能安装
解决方法:修改为应用的包名为新包名
4. 更新不兼容(错误码:****-7)
原因分析:安装的应用与手机上的应用包名相同但是签名不相同
解决方法:修改打包的签名为上个版本的签名
5. 共享用户不兼容(错误码:-8)
原因分析:应用为ShareUid应用,应用与已经安装的ShareUid应用签名不一致导致安装失败。
解决办法:与已有的ShareUid应用签名保持一致
6. 共享库已丢失(错误码:-9)
原因分析:应用依赖了系统不存在的共享库,最常见的是google map library导致安装失败
解决方法:建议应用集成HMS以避免google map library产生的问题。
7. 应用组件的命名与已安装应用有冲突(错误码:-13)
原因分析:应用定义的ContentProvider与手机上已经安装的应用冲突
如何确定与什么应用冲突:
1.查看日志,找到安装失败回调
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指令拿到出问题手机上所有的ContentProvider定义,查看哪个应用跟要安装的应用冲突了。
adb shell dumpsys package providers >d:/temp/provider.txt
解决方法:
卸载手机上ContentProvider 中Provider Authorities相同的应用以解决冲突问题
8. 应用与此设备的CPU不兼容(错误码:-113、-16)
原因分析:应用打包未针对特定cpu版本进行适配
解决方法:应用需要兼容对应cpu类型。
9. 应用验证超时(错误码:-21)& 应用验证失败(错误码:-22)
原因分析:手机自动到google play 商店校验应用是否合法,访问过程中网络连接超时,正常发货手机不会主动去google play商店校验,除非用户主动升级了google play商店或者用户下载的某个应用去升级了google play商店,导致去校验超时。
解决方法:
1.到手机中设置—应用—应用管理---找到界面菜单键 点击显示系统应用---找到google play 商店 --- 找到卸载按钮或者界面中菜单按钮点击卸载更新 -----卸载完成如果界面上显示停用应用点击停用(没有则不用设置)
2. 设置---Google---安全----goole play保护机制 里面的开关是否开启了,如果开启则全部关闭。
10. 系统已经存在较高版本,此安装包无法安装(错误码:-25)
原因分析:android是多用户机制,这个地方可能存在子用户、隐私空间有高版本的应用存在导致不能安装,并且是用户参加过众测之类的活动导致安装了比较高的版本
解决方法:查看子用户和隐私空间中有没有对应的高版本,如果有,卸载高版本的应用后再安装
11. 解析失败(错误码:-102)
原因分析:安装包打包错误导致解析失败
解决方法:在华为应用市场安装请找华为应用市场开发人员定位(找到日志中下载路径,通过电脑浏览器下载apk,通过adb安装看是否同样报错),其他渠道安装联系其他渠道人员定位
12. 安装包未包含任何证书(错误码:-103)
原因分析:安装包中没有证书,安装包试内侧用户专属包,定向发送给用户。
解决办法:需要开发者添加证书。
13. 未知错误(错误码:-111)
原因分析:只有华为应用安装不了,其他应用正常安装,或者其他应用也不能安装,设备是定制设备不能随便安装应用
解决办法:此设备可能是鼎桥双系统警务通的机型,需要联系鼎桥热线反馈问题。
14. 应用定义的权限与系统已有应用的权限冲突(错误码:-112)
原因分析:安装的应用与手机已经安装的应用定义权限有冲突,详细分析中有显示冲突的已安装应用是哪个
解决方法:需要开发者修改自定义权限