iOS & Android App Deployment

Complete overview and guide on automated mobile app publishing for iOS and Android using Buzzy.

Buzzy now supports automated mobile app publishing. Buzzy can build your app and publish it to your app store/ Google Play account.

Mobile app publishing requires that you first have a valid deployment and active subscription. If you don't have an active deployment please see Create and manage Deployments.

Users may choose to deploy apps to Android and/or iOS.

Managing Mobile Deployment in the Buzzy Editor

Mobile app deployment controls can be found under the Publishing tab in the editor, then scroll down to the Deployment section, under active deployments, click on View on your deployment for the app and scroll down to the Mobile App Deployment section.

Each mobile deployment, Android or iOS has a readiness attribute. When all the required information is provided to Buzzy, then an app is ready to be built and deployed. See the iOS App Deploymentand/or Android App Deploymentsections on exactly how to obtain this deployment information.

What does Buzzy need in order to deploy your app?

Buzzy requires API access to user's iOS and/or Google Play developer accounts using an API key/certificate. As such, users agree to give the Buzzy system access to create releases and publish app bundles to your accounts.

Buzzy also requires the app bundle signing certificates, app bundle signing is strictly required for both iOS and Android in order to get a user's app into the app/play stores.

Shared Properties

A set of shared properties are required for either iOS and Android.

  • App Display Name

  • Buzzy Settings Override

    • This is a generated property, Buzzy will generate the correct settings in order to link the mobile app to your Buzzy app. Simply click the Generate button in the deployment window.

  • Client assets

  • Splash screen background color

Client assets

This is a zip file that contains the app logo and splash screen assets for iOS and Android. We've provided the standard Buzzy app assets as a guide to what is required. If only publishing to either Android or iOS users only need to provide assets for the platforms they are publishing to.

Users must ensure the asset file structures adheres to the example above.

Some useful web tools for creating/generating mobile app assets:

iOS App Deployment

Requirements

Before beginning the deployment process, please ensure that you are enrolled as an Apple developer, this is where you will manage your app store listing and app marketing information. https://developer.apple.com/programs/enroll/

In order for Buzzy to deploy your app to your Apple account, we require the following information:

This documentation will guide you through the collection of this information.

Register a Bundle ID

Before being able to create a new app in App Store Connect, you must first register a bundle ID. The bundle ID is a unique identifier for your application. This is usually your domain name backwards plus the name of the app at the end. For example, the app MovieTest hosted under buzzy.buzz becomes buzz.buzzy.movietest.

To register a new bundle ID, go to:

Click on the + next to identifiers to create a new bundle ID.

Then keep App IDs selected then click Next. Select App for the type then next.

Add a description, and your Bundle ID. Note the App ID Prefix, save this Team ID as it is one of the pieces of information Buzzy requires for deployment. Once done scroll down to the Capabilities section.

You must click to enable the following capabilities:

  • Associated Domains

  • Game Center

  • iCloud (with the default setting)

  • Push notifications

  • Siri

Once done, click on Continue then confirm the correct details have been entered before clicking Register.

Done, you now have the Bundle ID, and the Apple Team ID.

Create App Listing

As the bundle ID is now created, you can now create an app listing. Simply go to:

Click on the + next to apps to create a new app.

Fill in the form, under the Bundle ID dropdown you should see the bundle ID you created in the previous step.

Once created, it will take you to your apps listing page. Here is where you will need to add any marketing information for the app. This will show on your app's app store page that users will interact with when downloading/finding your app.

If you are not ready to publish your app, and are looking to only test for the time being, this information isn't critical. However, it is required in order to have your application reviewed by Apple prior to release to the app store.

Now go to App Information under the General section.

Scroll down to the General Information section, and copy the Apple ID number. This is your app's unique identifier generated by Apple. Enter this as the App Store ID in the Buzzy app deployment manager.

At this point you should have the following information entered in the (iOS Section) Buzzy deployment manager:

  • Bundle ID

  • App Store ID

  • Apple Team ID

Creating a Certificate for App Store Connect API Access

In order for Buzzy to automatically build and deploy your application to your App Store account, we require a way to authenticate with Apple. This is done using a certificate for API access. The following section will walk through generating that certificate on the App Store Connect website and how to provide that to Buzzy.

To get started simply head to:

You might need to enable API access, simply follow the prompts and forms for that process. When finished you should see this (minus any registered/active keys):

First thing to take note of before creating a team key is to copy the Issuer ID and provide it to the Buzzy deployment manager under Connect Issuer ID. This is another piece of information we need.

Now click on the + next to the Active section.

Simply fill the form, give it a name (e.g. "Buzzy API Access"), and you must select App Manager as the role. This ensures that Buzzy has the ability to upload build to your App Store Connect account.

Your new key will now show up on the list. See the example below:

First copy the Key ID in this example it is "Q955LK62PJ" and enter this in the Buzzy deployment manager under Connect Key Identifier.

Next, you will see the download link on the far right of the entry, please note that once downloaded, Apple will not let you download a key again. So ensure you save this key to a save location.

Click on Download. The downloaded file has a .p8 file extension, you will need to upload this file to the Buzzy deployment manager under the App Store Connect API Private Key (pem) section of the form.

At this point you have provided almost all the information required to deploy your app to apple, in this section we collected the following items for deployment:

  • Connect Issuer ID

  • Connect key identifier

  • App store connect API private key (pem)

Generating the Signing Certificate

For the Certificate Private Key section of the Buzzy deployment manager, all you need to do is simply click on the Generate button and the Buzzy server will generate a signing certificate for you. Ensure the output looks similar to this:

Setting Up Firebase (iOS)

Please refer to the Setting Up Firebase section. Please ensure you complete this before continuing and it is a pre-requisite of the app build process.

Save Deployment Configuration

Please do not forget to click Save in the Buzzy deployment manager then ensure that you publish your configuration to our build server, see Publishing Your Deployment Variables.

Publishing Your First iOS App

At this point, the iOS deployment configuration is ready for deployment to the App store. After saving and publishing your deployment configuration you will simply be able to click on the Deploy to App Store button. iOS build can take up for 30 minutes so you may periodically refresh the build status to see what's happening.

Once the build process is done, it may take up to an hour for Apple to process the initial build, please ensure that you check your email for any correspondence from Apple.

After the build is uploaded to Apple it should show up in the Builds section of your app listing. You should see a button to Add Build to your app store submission:

Apple's Testflight

If you are not ready to submit your app for review and would like to test, utilise Apple's Testflight.

In the Testflight section you can add a build to be tested by individuals or groups of testers.

You can then download the Testflight app on your iPhone device and utilise it to test your published app before submitting the app for review by Apple.

Android App Deployment

Requirements

Similar to iOS, user's are required to set up a developer account in the Google Play developer console. https://play.google.com/console/signup

Initial Android Deployment Settings

The first set of settings can be set without leaving Buzzy. Namely, the package ID and keystore.

Please pick a unique package ID/Name. This is usually your domain name backwards plus the name of the app at the end. For example, the app MovieTest hosted under buzzy.buzz becomes buzz.buzzy.movietest.

Generating an Android Signing Keystore

This keystore is a file that is generated on the Buzzy server. However, the user must provide the key alias, password and keystore password. Save these parameters in a secure location (password manager) as you may want to use the same keystore to sign other apps.

Once filled-in, simply click Generate Keystore.

Setting up Google Play API Access

User's must first enable the Google Play Android Developer API. This can be done in the Google Cloud Admin Console.

Note: You want click "Enable API"

On the same page, in the left sidebar navigation, go to "Credentials" then in the "Service Accounts" section, click on "Manage service accounts".

When on the manage service accounts page, then click on "Create service account". Give it a name, label, and description.

Then you must select "Service account user" for the role.

For the final step leave it blank. Then continue. Once the service account is successfully created the user must download the certificate/key and provide it to Buzzy.

Do this by clicking on the actions menu, then "Manage keys".

On the "Manage keys" page then click Add key -> Create new key. Make sure the key type is JSON.

On creation, the file will be downloaded to your computer. This file is what you will provide as the file under the Google Play Services Account (JSON) section in the Buzzy deployment setup.

Setting up Firebase (Android)

Please refer to the Setting Up Firebase section. Please ensure you complete this before continuing and it is a pre-requisite of the app build process.

Save Deployment Configuration

Please do not forget to click Save in the Buzzy deployment manager then ensure that you publish your configuration to our build server, see Publishing Your Deployment Variables.

Publishing Your First Android App

It is important to reiterate that the initial build of an Android app must be uploaded manually. Buzzy gives you this option by allowing you to download the app bundle after the build has completed.

You can initiate this initial build by clicking Create Initial Android Build in the mobile app deployment controls.

After the initial build has started, you need to refresh in order for Buzzy to fetch the download link for you. Initial builds take around 10-25 minutes so get a coffee and come back.

Once the build is ready after clicking refresh you will be able to click on the Download App Bundle button and it will download the initial app bundle to your computer.

Head back to the Google play console to now create your app listing and upload your initial app. Create your app entry if it doesn't exist yet.

After creating the app listing, then go to the Test and release section and under Internal release then create a new release.

Follow the process guided by the UI then you may upload your android app bundle file (.aab).

Note: Google will require a plethora of app and account setup prior to final release of your application, these processes are guided and done through the Google play console interface. As these processes change frequently, we don't have step-by-step documentation for such processes.

Publishing Your Deployment Variables

It is imperative that users remember to Publish their deployment variables. When editing your deployment variables, don't forget to click Save. Then, ensure that you click on Publish Deployment Variables or Update Deployment Variables (if changing) before you initiate an app deployment.

Setting Up Firebase

Buzzy uses Firebase for some application features. As such, every user must setup their own Firebase project in order to build their application.

Start by going to the firebase console and clicking Create a new Firebase project.

Go through the process to create your project. Note, Google Analytics is not necessary, you can disable this feature in the creation process to make the process easier.

Once the project is created it will take you to the project home page, where you can Add an app.

Select the appropriate platform, Android or iOS.

Fill in the details that you have already done in Buzzy. Then download the config file.

Note:

When downloading the config for Android it will be a JSON file.

For iOS, it is a Plist file.

Upload the respective file to the deployment manager in Buzzy, under Firebase google_services.json or Firebase GoogleService-Info.plist.

Last updated