In this article, we are going to explain how to release the artifact to Google Play store created from a previous successful build. For more on how to create a build pipeline visit this link: Android App bundle for Xamarin.Android Apps Using Azure DevOps build pipeline
Navigate to Releases sub-menu from the Pipelines menu and create a new release pipeline or edit the existing one. If you are going with a new release pipeline choose an empty job as a template. Once that is done New release pipeline will be added, ready for edits.
By clicking on Add an artifact choose as source type the build definition you used for building the solution and creating the artifact file. It should look something like this:
By pressing on the Add button the artifact will be linked and ready to proceed to the stage. Next, select the stage that is intended to deploy the app to Play store and navigate to Tasks.
If we search for Google Play tasks we can see there are several different tasks for deploying the app to the store. If we were about to choose the oldfashioned way for deploying the app to Play Store by providing a .apk file we would have chosen the Google Play – Release task. But because now we have the .aab file we need the Google Play – Release Bundle task.
By adding the task we can see there are several fields that are required for successful deployment:
- Service connection – Google Play service connection that is configured with your account credentials.
- Application id (com.google.MyApp) – The application id of the bundle you want to release, e.g. com.company.MyApp
- Bundle path – path to the bundle (.aab) file you want to publish to the specified track. Wildcards can be used. For example, */.aab to match the first APK file, in any directory.
One by one
Lets take a look at them, one by one:
- Service connection:
Here is needed to authenticate with Play Store service so we can upload our .aab file. There are two methods for authentication: by using a Service connection or the Json Auth File. More on how to perform that see on this link: Authenticate Google Play with Azure DevOps. Once that is set correctly we are able to connect to the store and have a secure delivery for the app from this to that service.
- Application id (com.google.MyApp)
This refers to the package name. You can check that in your AndroidManifest.xml file
- Bundle path
Choose the .aab file you want to deploy from linked artifats.
And finally select the track you want to publish the bundle to. The Internal is selected by default.
There are other additional options in the pipeline that can be defined but with this is enough to deploy the app successfully to Play store.
Save & Create a release.