App version not updating on device after Blueprint re-converge: increment versionCode in APK
Android
If an app isn't updating on your devices after you upload a new APK version to Esper Apps or apply Blueprint again a Blueprint, the issue is likely that the APK's versionCode hasn't been incremented. Android uses versionCode to determine whether an APK is newer than what's installed. Learn how to fix this.
Why your app won't update
Android's package manager uses versionCode — an integer value in the APK manifest — to decide whether an incoming APK is newer than the installed version. Changing the display name alone (the versionName string) is not enough. If your new APK has the same versionCode as the installed version, Android silently rejects the install even though the Esper Console may show the installation as successful.
Before you begin
Find the versionCode of the APK currently installed on your device. You can check this in two ways:
- In the Esper Console: go to Devices & Groups → [Device Name] → Apps and look for the version information.
- Using the command line: run
aapt dump badging <apk_file> | grep versionCodeon your APK file.
How to fix this
- In your app's build configuration, increment the
versionCodeinteger to a value strictly greater than the currently installed version. For example, if the installed version hasversionCode 10, set the new build toversionCode 11. - You can also update the
versionNamedisplay string (for example, from1.0to1.1) for clarity, but this step is optional. - Build your APK with the incremented
versionCode. - Upload the new APK to Esper Apps in the Esper Console.
- Navigate to your Blueprint: Blueprints → [Blueprint Name] → Apps.
- Confirm the new APK version is selected.
- apply Blueprint again the Blueprint by going to Blueprints → [Blueprint Name] → Converge and applying it to your device group.
- Verify the update on your device: go to Devices & Groups → [Device Name] → Apps in the Esper Console, or check on the device itself at Settings → Apps → [App Name] → Version.
The app still won't update
If you've incremented versionCode and the app still doesn't update, check the following:
- Device storage: Verify that the device has enough free storage to accept the new APK.
- Device status: Confirm the device is online and the Esper agent is active by checking Devices & Groups → [Device Name] → Device Info → Agent Status.
- Conflicting policies: Check whether overlapping Blueprints or group-level overrides are pinning an older version of the app.
-
Collect logs: If the Esper Console shows a successful install but the device version hasn't changed, collect Esper Agent logs using the command
adb shell logcat -d -s EsperDevicePolicyand contact Esper Support with your device serial number, APK details, and log output.
Important notes
-
versionCodemust be a strictly increasing integer. It cannot be equal to or lower than the installed version, or Android will silently reject the install. - This behavior is built into Android itself and applies to all devices and Esper Agent versions.
-
versionNameis just a human-readable display string and does not affect whether Android upgrades your app. - This applies only to APKs uploaded directly to Esper Apps. Apps distributed through the Google Play Store handle versioning on the server side and are not affected.
- To prevent this issue in the future, use auto-incrementing build numbers (such as CI build numbers) as your
versionCodein your build pipeline.
Still need help?
If the steps above don't resolve your issue, contact Esper Support and include your device serial number, APK details, and any relevant logs.
Please sign in to leave a comment.
Comments
0 comments