So you want to learn how to publish a mobile app?
It's actually kind of hard but I'm here to help!

Written by Jon Sousa, lead developer at Emerald Interactive Games.

First, are you developing for Android or iOS?

While developing Lil' Blue Buddy, I discovered there is very little documentation about the mobile app publishing process. Initially, I did not realize how much work publishing an app would be, but I had a vision. I rushed forward without so much as a cursory glance to caution. Fortunately, I still remember that journey, and I'd like share what I've learned with you.

You're gonna need a list:

  1. Developer Account
    You're going to need a Google Play and an iTunesConnect account.
  2. Set up your app
    You need to set up your App and all its prerequisites before you load your Android Application Package (APK) or your binary (iOS) files.
  3. Building
    This is the part where you upload your App for review.
  4. Submit
    Holy cow, submitting already?

01 Making a Developer Account:

First, sign in to the Google account (you know, your Gmail account) you want associated with your Google Play Account. From here you will purchase your license for $25 and it's yours until the end of time.

First, you are going to need access to Xcode, which is FREE! Well sort of free, you must have Mac OSX in order to use it. Sign in to your iTunes Connect account using your Apple ID credentials. They're the same credentials you use when buying an app from the App Store or logging into your computer (unless you have set up a new Apple ID for your company in which case use that one).
You will also be required to purchase a license (like Android), except... it's gonna be $99, and only for one year. Yikes... But hey, that's only about $8 a month, if that helps. You're also going to need to generate a certificate, and I'm sorry but this part can be a real pain.

            1. In the Xcode dropdown menu, select Preferences.

            2. Select the Accounts tab.

            3. Click the plus sign in the lower left corner and select 'Add Apple ID'.

            4. Enter your Apple ID information and click 'Add'.

            5. Select the Apple ID in the left pane and then click 'View Details'.

            6. Click the plus sign  and choose iOS Development to complete the certificate generating process.

Now, you're going to add all of the devices you want to develop with.

            7. Plug in your device to the computer, then open up Xcode (if you closed it already).

            8. Click 'Window', then click 'Organizer'.

            9. On the left, look for 'Devices' and select the device you want (like your phone for instance).

            10. Notice under 'Provisioning' it will say "No provisioning profiles".

            11. Look at the bottom of Xcode, and click on 'Add to Portal', then log in using your credentials.

            12. Once your profile is made, open your device, go to 'General Settings', and admire your new Provisioning Profile.

            13. Number twelve was a joke, but you will need to go to 'General Settings', look for your app's name, and then click the red Trust button.

Congratulations! You now have a developer account. You've no doubt also noticed that it is a much more tedious process with Apple than Google and well, get used to it.

02 Setting up your Mobile App:

Now we get to the good stuff. Click the bluish button that says +Add new application. Be careful, once you've named your app you cannot rename or get rid of it. I highly recommend you name it something like "Yourapp - Alpha". This way, you can alpha and beta test it as needed, make the app free, and still have the name you want when you go to release your app to the public.

            1. Select your app in the list of apps.

            2. In the menu second from the left, there is a side menu that will ask for your APK, if you haven't already uploaded it.

            3. If you click on the Beta testing tab there should be two options:

                - Closed Testing - requires users to be invited via email.

                    - You can email whoever you want to test your game and they can open their email on their phone and follow the directions.

                - Open Testing - anyone can test your game. This is why you wanted an alpha or beta name like "Yourapp - Beta" that way you can make your beta test free.
                *Please note: If you make an app free, you can never charge money for it later.

            4. Set up your test options either in Alpha or Beta, it's pretty straight forward.

Alright let's do this. Make sure you're logged into your iTunes Connect, account and click on the 'Users and Roles' to add a new user. Make him/her 'Admin' and 'Legal' on all the options. Then go back to the main page and click on 'Agreements, Tax, and Banking' and give Apple your eternal soul bank info.

            You (probably): Wait what?! I thought I was setting up an app?

            Me: Yeah... But you have to fill out a bunch of legal forms before you can, I'm afraid.
            1. Click on the 'My Apps' button and name your app.
            *Don't worry about putting Alpha or Beta after your app name. Unlike Android, you can test your app regardless of whether or not you intend to charge for it. Apple doesn't pull the same shenanigans as Google.

            2. Click the plus icon  in the top left corner and give your app a name, bundle ID (selecting Wildcard is fine), and an SKU.

What is an SKU you ask?

A stock keeping unit (SKU) is a store's or catalog's product and service identification code, often portrayed as a machine-readable bar code that helps the item to be tracked for inventory.
For you, all that matters is that you enter something you'll remember like My_First_App01, or whatever. You can also refer to the official documentation for more specific information.

03 Building Mobile App:

Got your APK? Good, go to your Google Play Console, select 'APK' (it should be in the side menu second from the left). Select either your Alpha or Beta build (or Production if you're a an overachiever), and select the 'Upload New APK' button. Then follow the steps to submit your APK.
Don't know how to make an APK?
I've got you covered, just watch this quick video.

This step is why you need a Mac OSX.

            1. Open Xcode.

            2. Under 'Targets' (located to the right of the 'Project' menu) select your app and select 'General', then make sure your 'Bundle Identifier' matches the 'Bundle Identifier'
            on your iTunes Connect.

            3. Choose your 'Team', and configure your 'Deployment Info'.

            4. Select your app under 'Project', and under 'Build Settings' make sure all the options under 'Code Signing Identity' are set to 'iPhone Distribution', and not 'iOS Developer'.

            5. Make sure your app is connected to 'Generic iOS Device'.

            6. Select 'Product', then click 'Archive'.

            7. The 'Organizer' window should pop up, if not click 'Window' then click 'Organizer'. Select your app (here you can rename it), then click 'Upload to App Store'. Don't worry, this will only upload the build to your iTunes Connect
            account, and will not actually submit it to the App Store.

04 Submitting Mobile App:

Alright, take a deep breath, we're almost done.

This one is pretty easy.

            1. Select all of the pictures you want to display when people look at your app. Make sure they are the correct dimensions.

            2. Select the 'Game Icon' that will appear on user's device background.

            3. Select the YouTube URL you want associated with your app.

            4. Submit your app.

            5. This processes usually only takes a couple of hours.

This one's a bit harder.

            1. Select all of the pictures you want to display when people look at your app. Make sure they are the correct dimensions.
            There are some really bizarre dimensions.

            2. Select the 'Game Icon' that will appear on user's device background.

            3. Select the build that was submitted via Xcode in 03 Building Mobile App.

            4. Submit your app.

            5. This processes takes about two to three days.

That's it!
While this process may be difficult, there are no words to describe the sense of pride you will have upon accomplishing something 99% of people never will.
You should pat yourself on the back, fellow developer, for you are on your way to publishing your very own app!

Also I would like to take this time to thank you personally for reading this tutorial. Emerald Interactive Games has just released its first game for mobile, Lil' Blue Buddy! This is a very exciting time for us and I hope you're part of it!

Feel free to email if you have any questions.

Good luck!