Looking to understand some of the most common application installation errors? I've compiled a list below.
For clarity, these messages are provided by Android, with the exception of ENTERPRISE_AUTO_INSTALL_ERROR_NOT_COMPATIBLE_WITH_DEVICE
, which is received via CloudDPC/Google Play during the automatic installation process. The scenarios therefore when these messages would show in logs is when an application is locally installed directly on the device, via -
INSTALL_FAILED_ALREADY_EXISTS
INSTALL_FAILED_INVALID_APK
INSTALL_FAILED_INSUFFICIENT_STORAGE
INSTALL_FAILED_DUPLICATE_PACKAGE
INSTALL_FAILED_UPDATE_INCOMPATIBLE
INSTALL_FAILED_DEXOPT
INSTALL_FAILED_OLDER_SDK
minTargetSDK
of the application is higher than that of the device. For example, trying to install an application targeting Android 14 (API level 34), on a device running Android 12 (API level 31). Note this is explicitly minTargetSDK
, which defines the minimum version of Android an application will run on. This can be due to a particular library in use relying on newer functionality, or a misconfiguration.INSTALL_FAILED_TEST_ONLY
INSTALL_FAILED_CPU_ABI_INCOMPATIBLE
, INSTALL_FAILED_NO_MATCHING_ABIS
INSTALL_FAILED_MISSING_FEATURE
ENTERPRISE_AUTO_INSTALL_ERROR_NOT_COMPATIBLE_WITH_DEVICE
below for further details and resolution.INSTALL_FAILED_VERIFICATION_TIMEOUT
, INSTALL_FAILED_VERIFICATION_FAILURE
adb shell settings put global verifier_verify_adb_installs 0
INSTALL_FAILED_VERSION_DOWNGRADE
INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE
INSTALL_FAILED_DEPRECATED_SDK_VERSION
minTargetSDK
version introduced in Android 14. Target a newer SDK version for these devices. Read more here.INSTALL_PARSE_FAILED_NOT_APK
.APK
files when not directly installed from a Store. If you're trying to sideload a .AAB
, convert/build to .APK
and try again.INSTALL_PARSE_FAILED_BAD_MANIFEST
AndroidManifest.xml
file is missing or corrupt. The application source will need to be reviewed, and a new build repackaged for installation.INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME
AndroidManifest.xml
file has a missing or incorrectly formatted package name. The application source will need to be reviewed, and a new build repackaged for installation.INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION
INSTALL_FAILED_INTERNAL_ERROR
INSTALL_PARSE_FAILED_SKIPPED
INSTALL_FAILED_USER_RESTRICTED
INSTALL_FAILED_BAD_SIGNATURE
ENTERPRISE_AUTO_INSTALL_ERROR_NOT_COMPATIBLE_WITH_DEVICE
uses-feature
or automatically through assumed feature requirement if only uses-permission
is declared without uses-feature
), are not available on the hardware.android:required="false"
explicitly per-permission that isn't critical to functionality.