In the previous post we used the managed Google Play store to deploy a private app. In this blog post, we use Google play console and Intune to update the private app. Google play console allows you to do a phased rollout of a new app version in collaboration with Intune. This enables updates to be rolled out to a pilot group first and tested before going into production.
How does it work?
To test a new version of an app, we use the closed testing track. If the new version works properly it can be released to production and will replace the current production version. In the example below you can see that version 1.1 is released to the closed testing track. This version turns out not to work properly and is replaced by version 1.2. This version works properly and is published to production. The same is true for version 1.3. As you can see in this example, you can replace versions in the closed testing track with a newer version without publishing it to production.
Google Play Console
Before you can start publishing new versions in Google Play console, you need to create a developer account. To do this, go to the Google Play console and log in with your managed google play account. When you first sign in without a developer account, you will be asked to create a developer account. Select the type of account you want to create and fill in the details. You then have to pay a fee ($25) to complete the process.
After you create a developer account, you can log in. You will then see the screen below with all published private apps. As you can see in the screen below, you see the app we published in the previous blog. Select this app by clicking on it to publish a new version.
Publish a preview version
In this step we are going to publish the new version (1.1) of the app to the closed testing track. It will be assigned to the Azure AD group with test devs/users (Group1 Pre-Release). Only users/devices that are members of this group will have access to the new version. For the devices/users that are a member of the Production group (Group1) nothing will change they keep version 1.0. The situation will be as follows:
On the right hand side select “Closed testing” (1)this is what we are going to use to test a pre-release of a new app. In the screen you open you will currently only see the default testing track “Alpha” (2). I don’t want to use this one, I want to create a new closed testing track to use for my pre-releases. Press “Create track” (3) to create a new track.
Enter a name for the new closed testing track and press “Create Track” to create it.
The newly created closed testing track will now open. Select “Testers” to configure which tenants may test the pre-release.
Scroll down and select the checkbox near your own organization (1). Then press “Save changes” (2) to save the change. Then press “Create new release” (3) in the upper right corner to create a new pre-release.
The prepare screen now opens. Select “Upload” (1) to upload the new app version. When it is uploaded you will see the new version appear in the middle (2). In addition, an internal release name (3) is automatically filled in. You can add release notes (4) if necessary, these will be shown when updating in the Google Play Store. Press “Review release” (5) to continue.
In the review and release phase, you can review any issues (1) and if you agree, start the rollout by pressing “Start rollout to Closed testing” (2) in the bottom right corner.
You will then see a warning that the release will be available to the organizations you selected. However, the release will now only become available in Intune for publishing. But since we haven’t published the app in Intune yet, nothing will change for users.
After the release, the status will first change to “In review” this may take a few minutes.
After a few minutes and your screen refreshes, the status will change to “Available to selected testers”. In this case this means that the prerelease is available in Intune to assign to users.
Now go to the Intune portal. We will now first create a group that we can fill with the pre-release users. In this case, I am creating a group “Group1 Pre-Release”. Depending on the android enrollment profile you are using, you can add users or devices to this group. Press “Create” to continue.
Now go to Tenant administration -> Connector status and select “Managed Google Play App Sync”.
Press “Save + Sync” to sync the Managed Google Play store with Intune.
Go to Apps -> Android and select the private app.
Select “Properties” and press “Edit
You may have seen it in the previous screen, but an additional column called “Tracks” has been added. After you create a new assignment for the pre-release group (1). Press “Production” (2) to select the pre-release track “Preview – VMLabblog Demo App” (3). This assigns the pre-release version to the pre-release group. Then press “OK” to change the track.
The result is that you have two allocations for the private app “VMLabblog Demo App”. The production version assigned to everyone in “Group1” and the Production + Preview version in the Closed Testing track assigned to the test users/devices in the group “Group 1 Pre-Release”. If both the preview and production version are assigned to the same device/user then the preview version overrides the production version. Press “Review + Save” to save the assignment and roll out the test release to the testdevices/users.
Publish the preview version to production
Now that the new version is available to test users, it can be tested. If there is a bug in the version it can be replaced with a new version in the Closed testing track. This way regular users are not affected by the update procedure. As soon as the new version is deemed suitable for production it should be published to the production track. In this step we will replace the current production version with the preview version.
Open the Google Play Console and select your private app. Then, on the left side, select “Closed testing” (1) and select “Manage track” (2).
Under “Releases” select -> “Promote release” (1). Then select “Production” (2) to release the closed testing release to production.
Review the settings and press “Review release” at the bottom right.
In the review and release phase, you can review any issues (1) and if you agree, start the rollout by pressing “Start rollout to Production” (2) in the bottom right corner.
You will then see a warning that the release will be available to the organizations you selected. Caution! Unlike the preview, this release will overwrite the current version in production and roll out to all users/devices immediately.
The preview version has now been promoted to production. As a result, the version in the closed testing and production track are the same. All users and devices that are members of the production group “Group1” will automatically receive the latest version (1.1) of the app.
This was the final part in the three-part blog series on how to publish private apps with Intune to Android enterprise devices. This blog series consist out of the following parts:
- Introduction Deploying private apps on Android Enterprise with Intune
- How to deploy a private apps using the Managed Google Play Store
- Test and release updated versions for your private app
If you have any questions or comments let me know in the comments section.
Hi Aad,
I came across your article and found it very informative and it helped me quite a bit so thank you for sharing your knowledge!
One thing I had an issue was the ‘Tracks’ option when trying to create a demo group within my private app.
I’m just wondering is this still a feature? If so, then I’ve likely gone wrong somewhere but just want to ask if it’s still a feature.
Many Thanks,
Eoin
thanks for the blog information.
currently i am also doing this but realized that when set required deployment of closed testing track to test group in intune but the app is not push to the test user. when go to managed play store, the app has required updates button waiting for the user to press. is it purpose to like this even though i set a required deployment?
i am using android enterprise fully managed.
Hi John,
This depends on your configuration. In the Device Restrictions you can configure how App updates are handled (Applications -> App Auto-updates). In the app assignment you can also configure the “Update Priority”. Check this link for more information https://techcommunity.microsoft.com/t5/intune-customer-success/best-practices-for-updating-your-android-enterprise-apps/ba-p/3038520
regards, Aad
I configured ‘always’ for app auto-update and push deployment for high priority app update. However it does not update in few minutes. It took 24 hours. I am using user group
thank you for this very informative post.
I undertook to update two private Android applications based on your teachings, however, I came across the fact that once the process was completed and syncing performed in Microsoft Intune, applications are now missing from Intune and despite the 24 hour wait, still nothing.
Do you have any idea what happened?
thank you!
Hi Aad!
Thanks for a good article.
I have one question regarding the step “Publish the preview version to production”. As you describe, publishing the updated app to the Production track will update all devices assigned to the app in Intune since the “Production” track cannot be unselected.
Do you see any downsides by skipping this step but instead select the “Preview” version for Group1 assignment as well?
Im thinking, instead of naming the tracks as Alfa, Beta, Preview or similar, name them with the version number of the app, like 1.1.0, 1.2.0 and 1.3.0 and then in Intune select what version you want to install on different assignment groups instead.
As I see it this works as long as you do not publish any higher versions to the Production track.
Any experience regarding this method? Do you see any downsides or risks?
Thanks!
//Niklas