adb应用安装失败分析

news/2025/1/12 10:07:38/

1. adb安装应用的时候有时可能失败,报出如下失败信息:

[100%]/data/local/tmp/map-20160831.apkpkg:/data/local/tmp/map-20160831.apk
Failure[INSTALL_FAILED_ALREADY_EXISTS]

2. 常见安装失败输出代码、含义及可能的解决办法如下:

INSTALL_FAILED_ALREADY_EXISTS                         应用已经存在,或卸载了但没卸载干净解决办法:adb install 时使用 -r参数,或者先 adb uninstall <packagename>再安装INSTALL_FAILED_INVALID_APK                            无效的 APK文件INSTALL_FAILED_INVALID_URI                            无效的 APK文件名解决办法:确保 APK文件名里无中文INSTALL_FAILED_INSUFFICIENT_STORAGE                   空间不足解决办法:清理空间
INSTALL_FAILED_NO_SHARED_USER                         请求的共享用户不存在INSTALL_FAILED_UPDATE_INCOMPATIBLE                    以前安装过同名应用,但卸载时数据没有移除;或者已安装该应用,但签名不一致解决办法:先 adb uninstall <packagename>再安装INSTALL_FAILED_SHARED_USER_INCOMPATIBLE               请求的共享用户存在但签名不一致INSTALL_FAILED_MISSING_SHARED_LIBRARY                 安装包使用了设备上不可用的共享库INSTALL_FAILED_REPLACE_COULDNT_DELETE                 替换时无法删除INSTALL_FAILED_DEXOPT                                 dex 优化验证失败或空间不足INSTALL_FAILED_OLDER_SDK                              设备系统版本低于应用要求INSTALL_FAILED_CONFLICTING_PROVIDER                   设备里已经存在与应用里同名的 content providerINSTALL_FAILED_NEWER_SDK                              设备系统版本高于应用要求INSTALL_FAILED_TEST_ONLY                              应用是 test-only的,但安装时没有指定 -t 参数INSTALL_FAILED_CPU_ABI_INCOMPATIBLE                   包含不兼容设备 CPU应用程序二进制接口的 native codeINSTALL_FAILED_MISSING_FEATURE                        应用使用了设备不可用的功能INSTALL_FAILED_CONTAINER_ERROR                        sdcard访问失败;  应用签名与 ROM签名一致,被当作内置应用。解决办法:确认 sdcard可用,或者安装到内置存储; 打包时不与 ROM使用相同签名。INSTALL_FAILED_INVALID_INSTALL_LOCATION               不能安装到指定位置;  应用签名与 ROM签名一致,被当作内置应用。解决办法:切换安装位置,添加或删除 -s参数;打包时不与 ROM 使用相同签名INSTALL_FAILED_MEDIA_UNAVAILABLE                      安装位置不可用解决办法:一般为 sdcard,确认sdcard 可用或安装到内置存储INSTALL_FAILED_VERIFICATION_TIMEOUT                   验证安装包超时INSTALL_FAILED_VERIFICATION_FAILURE                   验证安装包失败INSTALL_FAILED_PACKAGE_CHANGED                        应用与调用程序期望的不一致INSTALL_FAILED_UID_CHANGED                            以前安装过该应用,与本次分配的 UID不一致解决办法:清除以前安装过的残留文件INSTALL_FAILED_VERSION_DOWNGRADE                      已经安装了该应用更高版本解决办法:使用 -d 参数INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE             已安装 target SDK支持运行时权限的同名应用,要安装的版本不支持运行时权限INSTALL_PARSE_FAILED_NOT_APK                          指定路径不是文件,或不是以 .apk结尾INSTALL_PARSE_FAILED_BAD_MANIFEST                     无法解析的 AndroidManifest.xml文件INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION             解析器遇到异常INSTALL_PARSE_FAILED_NO_CERTIFICATES                  安装包没有签名INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES        已安装该应用,且签名与 APK文件不一致解决办法:先卸载设备上的该应用,再安装INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING             解析 APK文件时遇到CertificateEncodingExceptionINSTALL_PARSE_FAILED_BAD_PACKAGE_NAME                 manifest文件里没有或者使用了无效的包名INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID               manifest文件里指定了无效的共享用户 IDINSTALL_PARSE_FAILED_MANIFEST_MALFORMED               解析 manifest文件时遇到结构性错误INSTALL_PARSE_FAILED_MANIFEST_EMPTY                   在 manifest文件里找不到找可操作标签(instrumentation或 application)INSTALL_FAILED_INTERNAL_ERROR                         因系统问题安装失败INSTALL_FAILED_USER_RESTRICTED                        用户被限制安装应用INSTALL_FAILED_DUPLICATE_PERMISSION                   应用尝试定义一个已经存在的权限名称INSTALL_FAILED_NO_MATCHING_ABIS                       应用包含设备的应用程序二进制接口不支持的 native codeINSTALL_CANCELED_BY_USER                              应用安装需要在设备上确认,但未操作设备或点了取消解决办法:在设备上同意安装INSTALL_FAILED_ACWF_INCOMPATIBLE                      应用程序与设备不兼容does not contain AndroidManifest.xml                  无效的 APK文件is not a valid zip file                               无效的 APK文件解决办法:先将设备与 adb 连接成功unauthorized                                          设备未授权允许调试error: device not found                               没有连接成功的设备解决办法:先将设备与 adb 连接成功protocol failure                                      设备已断开连接解决办法:先将设备与 adb 连接成功Unknown option: -s                                    Android 2.2以下不支持安装到 sdcard解决办法:不使用 -s 参数No space left on device                               空间不足解决办法:清理空间
Permission denied ... sdcard ...                      sdcard 不可用signatures do not match the previouslyinstalled version; ignoring!           已安装该应用且签名不一致       解决办法:先卸载设备上的该应用,再安装

3. adb install 实际是分三步完成:

(1) push apk 文件到/data/local/tmp

(2) 调用 pm install 安装。

(3) 删除 /data/local/tmp 下的对应 apk 文件。



http://www.ppmy.cn/news/677745.html

相关文章

【UWP开发】uwp应用安装失败

编译出了uwp应用.appx之后双击打开&#xff0c;报错你需要为此应用包而安装的新证书&#xff0c;或者是带有受信任证书的新应用包。系统管理员或应用开发人员可以提供帮助。证书链在不受信任的根证书中进行处理&#xff0c;但也在其中终止 (0x800B0109) 解决办法&#xff1a; …

Android 判断应用是否安装

方法一 使用抛出异常的方式判断&#xff0c;通过包名获取app的信息&#xff0c;当app不存在时&#xff0c;会抛出NameNotFoundException 异常&#xff0c;我们通过对异常的捕获&#xff0c;从而判断是否安装了该应用&#xff0c;代码如下&#xff1a; private boolean checkA…

广东IPTV 第三方APP应用安装(超简单)

1、需要安装的APP软件先行下载到U盘或microSD卡&#xff1b; 2、插入盒子打开&#xff0c;安装并打开文件管理软件&#xff0c;把APP复制或移动到盒子的系统卡上&#xff1b; 3、直接双击安装APP即可。 注意APP不能安装太多&#xff0c;盒子内存空间一般不大,很容易爆满&…

我们发现您的应用在用户同意隐私政策前申请获取用户个人信息(IMEI, 设备ID, 用户应用安装列表, MAC地址用户数据)

一、需求 解决应用上架问题 过度获取用户信息我们发现您的应用在用户同意隐私政策前申请获取用户个人信息&#xff08;IMEI, 设备ID, 用户应用安装列表, MAC地址用户数据&#xff09; 自"滴滴"事件后&#xff0c;为避免该类事件&#xff0c;App的上架变的严格起来。上…

使用adb工具打开TCL电视的第三方应用安装权限

使用adb工具打开TCL电视的第三方应用安装权限 前言安装adb工具打开电视的adb调试开关abd工具打开电视权限 前言 新买的TCL电视往往默认是无法安装第三方应用的&#xff0c;即使用U盘安装了第三方应用&#xff0c;应用也没有升级权限。另外&#xff0c;也无法通过沙发管家等应用…

Thinkphp6.0 多应用安装说明

附 如果不能下载 请到这里来 传送门 我先把框架丢上来吧 一个是刚下来没有扩展的,也就是单应用的 单应用.zip 下边这个是多应用的,安装好了扩展的 多应用.zip 接下来说说我是怎么搞的 按着文档的说明执行命令(记得安装 composer) composer create-project to…

华为手机应用安装错误码分析汇总

华为手机应用安装错误码分析汇总 在应用开发过程中经常会遇到应用安装失败的问题&#xff0c;今天就给大家分析一下一些华为手机上主要的安装错误码&#xff0c;帮助大家快速的解决应用安装问题。 1. 该安装包无效或不完整、该安装包与操作系统不兼容&#xff08;错误码&am…

Android - 应用安装、卸载、覆盖安装的广播及不生效原因解析

转载请注明出处&#xff1a;https://blog.csdn.net/mythmayor/article/details/80653621 一、应用安装、卸载、覆盖安装的广播 最近想优化一下项目&#xff0c;因为应用是有自动更新的功能的&#xff0c;想在覆盖安装的时候做一些自己的逻辑。于是使用了广播来完成这个需求。…