This guide walks you through how to diagnose common app installation failures.
In this article:
- Failures by Error Message
- Failures by App Type
- Volume Purchasing Program App Installation Failures (for iOS devices)
Failures by Error Message
Blueprint application failed due to - [Couldn't Install Google Play Apps]
This error occurs when a device can't install a Google Play Store app because the app is region-locked or can only be installed by certain devices.
Check the app's documentation for region and compatibility information.
Download failed for null: Unexpected end of stream
We see this error for devices that experience slow download speeds and those that have brief periods of unstable network connectivity.
Ensure the device is on a stable internet connection and has enough data storage to support the app. Then try again.
App Name: Install Verification Failure
Google Play Protect is enabled by default across all GMS devices. Play Protect will automatically block the installation of any unsigned or improperly signed APK that is installed by Esper through a blueprint, install command, API, etc. Provisioning will also fail if an unsigned or improperly signed app is set to install "During Provisioning" in the blueprint.
The following error message will be presented in the event feed when this occurs: "apk_package_name: Install Verification Failure".
To resolve this:
- Enable "Play Store Visibility" setting in the Platform Services section of the Blueprint
- Open the PlayStore app on the device.
You can also disable Play Protect by following Google Support's Guide.
Troubleshooting Tips:
- Set the unsigned or improperly signed app to install "Post Provisioning" in a blueprint.
- Follow the steps to manually disable Play Protect before installing Enterprise apps.
- Create a blueprint dedicated to setup that has the Play Store shown and the third-party apps excluded.
- Switch the device to a production blueprint after setup.
Install failed: User Restricted
We mostly see this issue when the device has restricted access. You’ll need to grant all the permissions requested by the application from the device.
On most devices, you can enable the permissions by going to Settings > Developer Options > Enable USB Debugging (Security Settings).
On Redmi devices, this option is found in Settings > Developer Options > Disable MIUI Optimization.
Install failed: Version Downgrade
This error happens when you try to install a version lower than what is currently on the device. One way to resolve this is to remove the application on the device and then install the lower version. See App Sync scenarios for more information.
Install failed: Test Only
You’ll see this error when an APK with its Manifest file set to “android:testOnly=true” tries to install. Ask the app developer to change the Manifest file to “android:testOnly=false”, or use adb to install the app. When you use adb, use
adb shell pm install -t /app/location.apk
Install failed: Update Incompatible
You may hit this error if you try to upgrade an app to a version that is signed with different keys from the current version. Sometimes, this happens during the debugging process when an app is left unsigned, or signed with production or debug keys. The full message is "INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package {package_name} signatures do not match previously installed version; ignoring!".
If this error occurs, uninstall the app at the device level. Then, install the app with the correct keys. You may need to ask your app developer to update these keys.
null, Download failed with error code: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
You may see this error if you try to install an app on a device set with an improper date and time. This sometimes happens when the Android device (typically an AOSP device) drifts from the correct time when it can't sync with the network time server due to a firewall. Check Esper Firewall Requirements for the two most common time servers.
To resolve this issue, check with your device manufacturer for the time server and ensure it's allowlisted in your network's firewall. You can also manually correct the date and time on the device through Esper and Android settings.
Failures by App Type
Google Play App Errors
Error Messages: Failed to install or Application install is experiencing some Issues. Please try one more time.
First, check that you’re enrolled in EMM:
You’ll need to enroll in EMM to use Google Play apps.
After enrolling, create a blueprint, and go to Hardware Settings to enable Enroll Device in EMM during Onboarding.
During provisioning with the blueprint, the devices will enroll in EMM.
If you’ve already onboarded and provisioned these devices without doing this step beforehand, you’ll need to factory reset the devices and provision them once again with the blueprint mentioned above.
We recommend also checking the following:
- Ensure devices are connected to a reliable network.
- Ensure commands work on the device (try sending a ping to test this).
- Certain Google Play apps are not available in some countries. Check the app’s restrictions or download an APK and upload it to Esper as an enterprise app.
- Apps with a large file size may experience timeout errors. You can continue to check its status in the device’s App section.
Google Play App Approval Failures
Clear your browser’s cache and try again.
Unable to install, show, hide, or enable the Google Play Store application
The Google Play Store application must be enabled through a blueprint, template, or compliance policy. In addition, you'll need a GMS device and EMM enrollment to use the Google Play Store.
In a blueprint, enable the Google Play Store by enabling Google Play Store Visibility in Platform Services.
As well, ensure the app is not hidden or disabled in the blueprint's app section.
In a template, in the Compliance Policy section, ensure Google Play Store is enabled. If a template was already applied to the device, you can apply a compliance policy to update the device. The Google Play Store appears in a similar section as the template.
Enterprise App Installation Failures
- Ensure devices are connected to a reliable network.
- Ensure commands work on the device (try sending a ping to test this).
- Ensure the app version isn’t already installed on the device.
- Apps with a large file size may experience timeout errors. You can continue to check its status in the device’s App section.
Volume Purchasing Program App Installation Failures (for iOS devices)
An app (custom or VPP) suddenly stopped working.
Ensure your organization is regularly updating and signing VPP applications. If an application suddenly stops working, one reason could be its certificates are expired or invalid. All apps must also adhere to Apple’s guidelines.
I’m able to install VPP apps on some devices but not on others.
Ensure you’ve allotted enough licenses for the app in ABM’s App Store. Even free apps need licenses. Allot one license per device.
I’ve set up my VPP token but the apps don’t appear in Esper’s VPP Apps section.
This process sometimes takes a few minutes.
If it’s been a while and you still don’t see the apps, you may need to update your location to include Esper. See Setting Up VPP Token for more information.
Error Message: App Update: The app could not be updated
Ensure the app version isn’t already installed on the device.
VPP token is invalid
There are a couple of reasons for this:
- The linked ABM account password may have changed, which invalidates DEP and VPP tokens.
- If a new server token is downloaded, it resets the old token.
Reupload new tokens to Esper to resolve either issue.