Information for Publishing to Stores
This document describes how to set up for publishing on the Google Play and Apple App Stores. Each is quite different and requires different information.
Google Play Store Information
Registering as a Google Developer
Even if you’re not doing the development yourself, to publish an app on Google Play you need to create a Google user and a Google Developer account.
Go to https://play.google.com/apps/publish and click the sign-in button. Follow the instructions to make a new Google user account for your organization or enter your organization’s Google user account credentials here.
Hint: DON’T use your personal Gmail account for this, make a more generic Company Account with a password that can be shared with other staff. We recommend that a Password Manager be used for this. Using this method will allow others to publish on the organization’s behalf when you are not available.
On this page, you will be reminded that there is a small cost to register as a Google Developer and that you need to accept their terms and conditions before proceeding. Please read and agree to the Terms and Conditions as you will be legally bound by these, and, if you are happy, tick the box and proceed to pay your registration and complete your account details.
You will be sent to the Google Cloud Console when you have successfully logged in using your Google Account details.
This is where you can create a new application, set up services that your app can use, manage pricing, set up your company’s profile and get reports on how your app is doing in the store after it is published.
Creating your Application
Create an Application by clicking the “Create Application” button at the top right of the page. This will direct you to add a Default Language and Application Name.
When finished, it will show you the dashboard for your App.
Look for a Project Number. This could be in multiple places but should be in the format ID: (#project_number>). E.g. ID: my-published-app (#12345678910).
The number in the brackets is the PROJECTID which will be used later in the publishing process.
- Click on the link entitled “APIs & Services” in the main menu.
- Then click the “Enable APIs’ link and find the APIs that you want to enable on the list that follows.
- Follow the instructions to enable the APIs that you want to use. Note: only add APIs that you are sure you need.
Generating a Key Store file
You need the ‘keytool’ command to be available on your system so that you can generate a keystore file for your app. This should be available on most Linux systems or can be found using yum/apt-get style deployment tools. If it is not available, you can get the tool by downloading and installing Java on your system (https://java.com/) and then running it from the command line or terminal.
The command is (all on one line):
keytool -genkey -v -keystore appname.keystore -alias appname -keyalg RSA -keysize 2048 -validity 10000 -dname "CN=appname, OU=Software, O=MyOrganisation, L=MyCity, ST=MyState, C=MyCountryCode" -storepass "mypassword" -keypass "mypassword"
This will create a file called appname.keystore which is needed for the build and publish system. The items in bold will need to be replaced with your information:
appname – A short name for your app, with no spaces, such as “mytestapp”.
MyOrganisation – Your organization or company name
MyCity – The city where your organization is based.
MyState – The State/Province/Region where your organization is based (leave out the ST=MyState if no applicable)
MyCountryCode – The two character country code for the country where your organization is based, such as US or NZ.
mypassword – Make up a new secure password for the keystore. Note: this password can NOT be changed or decrypted so you must record it for later.
Note: technically, a keystore file can store multiple keys, each referred to by a different key alias. For simplicity, we are making one file for one key here.
Checklist: Android Publishing Items
You should now have the following items ready to use with Umajin for publishing to the Google Play Store:
- The appname.keystore file
- The Password that you entered when creating the keystore file
- The ProjectID that you discovered from the creation step.
Apple App Store Information
This process has many steps and can take time, so allow for this in your deployment schedule.
To get all the information you need for an Apple App Store build and submission, you must create an Apple Developer Account and sign up to the iOS Developer Program.
Apple Developer Account
First, go to https://developer.apple.com/ and choose ‘Account’ from the main menu. Click ‘Create AppleID’ on the following login page and enter all your relevant information to create your user. Note: your email address becomes your AppleID so a generic email address for your company such as email@example.com could be a good plan.
Private Key and Certificate Signing Request (CSR)
- Download OpenSSL from the following site, if you don’t already have an implementation then you can get from the following link: https://wiki.openssl.org/index.php/Binaries
- When OpenSSL is installed, open a command prompt to the directory where you installed it and enter the following commands
openssl genrsa -out ios_private.key 2048 openssl req -new -key ios_private.key -out ios.csr -subj "/emailAddress=YOUREMAILADDRESS, CN=APPNAME, C=COUNTRYCODE"
Note: Make sure to replace the bold text above with relevant information for your app.
Production Certificate (.p12)
- Open a browser to the following link: https://developer.apple.com/account/ios/certificate/distribution
- Here, you need to navigate to Certificates > Production and click the plus button (top-right) to add a new certificate.
- In the next page, select “App Store and Ad Hoc” then continue. The following page gives brief instructions about how to create the CSR using Key Chain Access – similar to the above information in this document. Click continue again.
- You will now be asked to choose the ios.csr file from above and upload it to the server.
- You will then be able to download the generated CER file. E.g. ios_distribution.cer
- Once downloaded, you will need to run the following in a terminal/command prompt.
openssl x509 -in ios_distribution.cer -inform der -out ios_distribution.pem openssl pkcs12 -export -in ios_distribution.pem -inkey ios_private.key -password pass:"New password" -out ios_distribution.p12
Where New password is a new secure password you provide. Record it for later.
- You will end up with a file called ios_distribution.p12 and the password which you created above. Note: This file and password will be needed in the publishing process and is private information that should be saved securely.
You now need to create an App Identifier which will identify the application when it is put on the App Store. This is done by:
- Opening a browser to the following link;
- Check you are on the “iOS App IDs” page. If not, click “App IDs” link under the “Identifiers” category in the left-hand sidebar.
- Click the ‘plus’ button at top-right of the App IDs list page.
- App Description – the name of the app
- App ID Suffix – Use Explicit App ID and enter in reverse URL format. g. com.<yourcompanyname>.<appname> without spaces or asterisks.
- If you want to use Push Notifications in the future (or your app uses other services) then check these in the ‘App Services’ list.
- Click ‘Continue’ to register the new App ID.
iOS Provisioning Profile
Now you need to set up a Mobile Provisioning profile for the app.
- Navigate to https://developer.apple.com/account/ios/profile/production
- Select “Profiles” in the left hand sidebar.
- Click Generate a Profile
- Select the “App Store” option and continue.
- Select the App ID that you created in the App Identifier section (above) and continue.
- Enter your app name as the profile name, and continue.
- Click Generate.
- Click Download
- This will generate a Distribution provisioning profile for your application which you will download. This should be named mobileprovision.
You can also provide an Ad Hoc provisioning profile to use on a limited set of registered devices. These devices are configured in the “Devices” category in sidebar of the https://developer.apple.com site.
Checklist: iOS Publishing Items
You should now have the following items ready to use with Umajin for publishing to the iOS AppStore.
- The ios_distribution.p12 file that you created in the certificate step.
- The Password for ios_distribution.p12 as you entered it in the certificate step.
- The .mobileprovision file that was created in the provisioning step.
Publishing with Umajin
You now have all you need to publish on the Store(s) of your choice. The next steps are done within the Umajin Editor environment.
There are two options here –