常見安裝失敗輸出代碼、含義及可能的解決辦法如下:
輸出含義解決辦法
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_DUPLICATE_PACKAGE 已經存在同名程序
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 provider
INSTALL_FAILED_NEWER_SDK 設備系統版本高於應用要求
INSTALL_FAILED_TEST_ONLY 應用是 test-only 的,但安裝時沒有指定 -t 參數
INSTALL_FAILED_CPU_ABI_INCOMPATIBLE 包含不兼容設備 CPU 應用程序二進制接口的 native code
INSTALL_FAILED_MISSING_FEATURE 應用使用了設備不可用的功能
INSTALL_FAILED_CONTAINER_ERROR 1. sdcard 訪問失敗;
2. 應用簽名與 ROM 簽名一致,被當作內置應用。 1. 確認 sdcard 可用,或者安裝到內置存儲;
2. 打包時不與 ROM 使用相同簽名。
INSTALL_FAILED_INVALID_INSTALL_LOCATION 1. 不能安裝到指定位置;
2. 應用簽名與 ROM 簽名一致,被當作內置應用。 1. 切換安裝位置,添加或刪除 -s 參數;
2. 打包時不與 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 文件時遇到 CertificateEncodingException
INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME manifest 文件裏沒有或者使用了無效的包名
INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID manifest 文件裏指定了無效的共享用戶 ID
INSTALL_PARSE_FAILED_MANIFEST_MALFORMED 解析 manifest 文件時遇到結構性錯誤
INSTALL_PARSE_FAILED_MANIFEST_EMPTY 在 manifest 文件裏找不到找可操作標籤(instrumentation 或 application)
INSTALL_FAILED_INTERNAL_ERROR 因系統問題安裝失敗
INSTALL_FAILED_USER_RESTRICTED 用戶被限制安裝應用 在開發者選項裏將「USB安裝」打開,如果已經打開了,那先關閉再打開。
INSTALL_FAILED_DUPLICATE_PERMISSION 應用嘗試定義一個已經存在的權限名稱
INSTALL_FAILED_NO_MATCHING_ABIS 應用包含設備的應用程序二進制接口不支持的 native code
INSTALL_CANCELED_BY_USER 應用安裝需要在設備上確認,但未操作設備或點了取消 在設備上同意安裝
INSTALL_FAILED_ACWF_INCOMPATIBLE 應用程序與設備不兼容
INSTALL_FAILED_TEST_ONLY APK 文件是使用 Android Studio 直接 RUN 編譯出來的文件 通過 Gradle 的 assembleDebug 或 assembleRelease 重新編譯,或者 Generate Signed APK
does not contain AndroidManifest.xml 無效的 APK 文件
is not a valid zip file 無效的 APK 文件
Offline 設備未連接成功 先將設備與 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 previously installed version; ignoring! 已安裝該應用且簽名不一致 先卸載設備上的該應用,再安裝