Skip to content

Instantly share code, notes, and snippets.

@DanBradbury
Last active August 29, 2015 14:07
Show Gist options
  • Save DanBradbury/534b61f0c816adb85e84 to your computer and use it in GitHub Desktop.
Save DanBradbury/534b61f0c816adb85e84 to your computer and use it in GitHub Desktop.

%title: iOS Distribution %author: Dan Bradury %date: 2014-11-28

iOS Distribution

Goal: Understand the requirements and process of getting a game to the App Store.


Prerequisites

  • iOS Export
  • iPad or iPhone
  • Mac Device with up to date Xcode (5.X - 6.X)
  • Apple Developer Account

That may seem like quite a lot to just get started with iOS development but I can assure you that once its all been setup properly the process is quite easy.

It's important to note that Apple has an ever developing set of requirements that adhere to the new generation of devices. If you want to develop for iOS it is best to stay up to date on current standards.


Setting up Development Pipeline

  1. Setup our Mac
  2. Configure GameMaker
  3. Test our Environment

Setup Mac

  • Become a registered Apple Developer (https://developer.apple.com/)
  • Install/Update Xcode Development Environment
  • Request Development Certificate from the Keychain Access application (Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority)

App Store Prep

  • Login to the Developer Center and navigate to the Certificates, Identifiers & Profiles Section

Register Your Testing Device

  • Click on the Devices Section and follow the wizard Finding your UDID can be the tricky part if you don't know where it is
  1. Connect your iOS device to yur Mac
  2. Open iTunes on your Mac and select the device
  3. Click on the Serial Number text and it will turn into UDID
  4. Copy the device Name and UDID into the form
  5. Click Continue and register the device

Create App ID

Before you can test your game you need to create an identifier for it. To do this open up the App IDs section and create a new App ID by hitting the '+' button.

  • Enter the Name of your application
  • Specify a Bundle ID (Be sure to use the Explicit App ID) Per Apple's suggestion use a reverse domain naming style (com.mycompany.appname)

Create Distribution Certificate

There are quite a few different Certificates to choose from when going through the wizard. for our purposes we will use the Production > App Store and Ad Hoc certificate

  • Create and download the Certificate to your computer

Installing your Certificate

You an install the Certificates directly through Xcode but for us its probably just easier to double-click the file that we just downloaded and saved to our machine.

Create Provisioning Profile

  • We will need to create a Provisioning Profile to use for our games. I use a general App Store Provisioning Profile for everything that is meant for the store but you could just as easily use a seperate one for each application.

  • Create a new Provisioning Profile and select App Store in the Distribution Sub-section

  • Select the App ID that you just created and Continue

  • Select the Distribution Certificate that you created and Continue

  • Give the Pofile a name and Generate the Profile

This is everything that you need to setup your Windows machine but I advice trying to take care of your Certificate Access in order to silence any annoying warnings that may litter your Mac when you are doing any development.

Certficate Access

  • Inside the Keychain Access Application find the iPhone developer.yourName.ID
  • Right click the item and click Get info
  • Inside the popup box ensure Allow all application to access this item is selected

GameMaker Setup

  1. Open GameMaker:Studio
  2. Select File > Preferences > Mac OS X
  3. Fill out form
  • Mac Host Name - The IP of the Mac on your network
  • Mac User Name - The user that you have Xcode and all certificates installed on
  • Mac Password - The password used to unlock your map. (yo sudo creds)
  • Mac Install Dir - Location GameMaker will install files
  1. Confirm Mac Connection by clicking on the Check Mac Connection button

If you run into a failure and are sure that everything you entered is correct. Make sure that Remote Login is enabled

  1. Open Global game Settings > iOS
  2. Ensure the Bundle ID matches what you created earlier and that you are fine with all the General settings
  3. Select the Provisioning Side tab and click the Refresh from Mac button to update your Certificates and Profiles
  4. Select the appropriate Provisioning Profile and Certificate

Unfortunately there is not a handy check if this is working button but you will learn when you try to build your game

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment