On May 15, 2019, as a mechanism of trade war against China, United States President Donald Trump issued an executive order that bans the use of telecommunications equipment from foreign firms deemed a national security risk. On Sunday, May 19, 2019, Google publicly declared that it would be complying with Trump’s ban. For Huawei this meant they would no longer have access to Google mobile services, a fundamental part of every Android phone, and that their phones won’t even have Google PlayStore installed, which is needless to say predominant app distribution platform on Android. Huawei's response to this was AppGallery – an alternative Android app store.
This blogpost will try in the next few steps to shed some light on the process of creating and publishing your app on the Huawei AppGallery store.
Register for Huawei ID
First, you need to create a Huawei developer account by filling all required fields on the registration page. After that we select one of two account types; Individual or Enterprise, fill in all the necessary personal information and submit the account for review. Account verification can take up to two business days.
Create your App
Once account is verified, we can go to Huawei developer console. Developer console will be familiar to anyone who has published Android app before via Google Developer console.
On the left side menu, we can find different navigation pages such as AppServices, MyAPIs, API Library, Credentials, etc. We won’t go into details about the different features the developer console offers in this blogpost. Just select AppGallery found under the AppServies menu item as this one is of the most interest to us right now.
On AppGallery tap MyApps to see a page where your apps are listed. You will notice in the top right corner the New app option, so go ahead and select it. A dialog appears asking for basic app information such as:
- Package type - Devices we want to target - App name - App category, where we can choose between regular app or game - and Default app language
Setup your App
After you have successfully created your app, you can start setting it up. App’s dashboard shows you all the important steps necessary to publish your app to AppGallery.
Start by providing a full and brief description of your app. Upload app icon and content images that best describe your app’s functionalities. Apply content rating and app category. Select save after you have provided all the required information.
Prepare App for publishing
Generally, you are safe with publishing the same APK to both Google PlayStore and AppGallery but you should keep an eye on two things that might cause problems.
Firstly, any functionality relying on GMS (Google Mobile Services) won’t work on Huawei devices released after May 2019. Luckily there is a solution, and it’s integrating Huawei Mobile Service or HMS into your app. HSM is, as you have already correctly assumed, an alternative to GMS and is made up of various APIs, SDKs, and services that developers can use to create and improve their apps.
Second thing, you should consider changing your application ID to avoid possible confusion that can happen due to users having both PlayStore and AppGallery installed on their phones.
When you have decided and evaluated the aforementioned points you can proceed with uploading and publishing your app.
Publishing the App
In order to publish app, you first need to create a draft version. In the AppGallery console under Version Information, you should see a Draft option. When selected it will open a draft page with different information about your draft version.
Under Software version section tap on Software packages button to upload your APK file then scroll down to the end to Release schedule section and pick between one of two release options: releasing upon approval or on a specific date.
When you have finished editing the draft select Submit from the top right corner to submit the app for review. Verification by Huawei can take a few hours and if it is successful your app will be published to AppGallery.
Final notes
Every developer knows that release should be rolled out in stages to prevent accidental bugs, crashes, and misbehaviors introduced during the development process. For that purpose, Google has created release tracks (internal, alpha, and beta) which allows us to distribute apps securely and safely by making them available only to the chosen audiences at a certain stage.
Unfortunately, Huawei console has limited support as it only features Open testing option/track which allows distributing app to closed testing groups before public release. On the draft page under the Open testing section, you can set up the testing period and target users who should receive the app once it’s reviewed.
Also, AppGallery has no support for defining rollout percentage, so distributing the app only to the fraction of the users is not possible yet.