%title: iOS Distribution %author: Dan Bradury %date: 2014-11-28
Goal: Understand the process required to get a game on the App Store.
Prerequisites: It may seem like quite a lot of requirements just to get started with iOS development but I can assure you that once everything has been setup properly the process is quite painless.
- iOS Export (Normally $199, On Sale for $99)
- iPad or iPhone (For testing your Apps)
- Mac Device with up to date Xcode (Required for building iOS applications and submitting to the App Store)
- Apple Developer Account
It's important to note that Apple has an ever developing set of requirements. If you are planning on doing development for iOS it is important to stay current on the new devices and OS that are coming out
- Register as an Apple Developer
- Update XCode
- Register Device & App
- Create Certificates & Profiles
- Add Mac settings for building
- Add Certificate & Profile for your app
- Build an executable to confirm
Before generating all of the required Certificates and Profiles we have to handle some setup steps to make sure that everything is going to work as desired.
- 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)
Once all that has been taken care of we are ready to begin.
- Login to the Developer Center and navigate to the Certificates, Identifiers & Profiles Section
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
- Connect your iOS device to yur Mac
- Open iTunes on your Mac and select the device
- Click on the Serial Number text and it will turn into UDID
- Copy the device Name and UDID into the form
- Click Continue and register the device
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)
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
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.
-
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.
- 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
- 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
- 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
- Open Global game Settings > iOS
- Ensure the Bundle ID matches what you created earlier and that you are fine with all the General settings
- Select the Provisioning Side tab and click the Refresh from Mac button to update your Certificates and Profiles
- 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