I have recently rolled into Apple iOS developer program and was hoping to start some development on Apple iOS with Flash Builder. I went ok with 99$ enrolment but there were lot of other process to get started before I can test my code on any iOS device. Hence I am sharing this post to all the upcoming apple developers to help them enroll and start development faster.
Step1: Enroll into iOS Developer Program
Go to “https://developer.apple.com/” and click “iOS Developer Program”. You will be navigated to a new page where you can click “Enroll Now” button. The program costs 99$/year so it is quite affordable for the things that you do with it. So go ahead without thinking to the enrolment.
The next page will just presenting the steps that you have to do. I am going to explain them so you can click “Continue”.
The next page presents either create a new apple Id in case you want to have a seperate development Id or don’t have an Apple ID yet or just use existing Apple Id.
Once you Sign In/Create a new Apple Id, Just select individual if you are buying for yourself. In case you have bigger plans, you can also go for Company profile. I selected, “Individual”.
The enrolment will ask basic things like programs to be selected, you can keep default and continue to purchase the same with paying via Credit Card.
You will receive a notification once your purchase is verified. It normally takes 24-36 hours.
Login to your account and you should see something like this:
Now, lets get started with the things that you have to do before you can test your application on a device. In any iOS application development and tesiting, you need the below:
1. Development Certificate
2. Distribution Certificate
3. Provisioning Profile
So lets get started. You can get all three from “https://developer.apple.com/membercenter/index.action#home” once you login to your profile but there are certain things required which is written in the site that will happen only from MaC KeyChain access. Unless you have MaC or a virtual machine, this is not possible so I am going to present how it can be done on Windows.
Step2: Download OpenSSL for Windows
To be able to get the development certificate from Apple, you will need a .cert file like KeyChain Access. For windows, lets download the OpenSSL. Directly click on “http://slproweb.com/products/Win32OpenSSL.html” and below 2 programs need to be installed in the specified sequence only:
The installation is pretty simple. Just make a note of the OpenSSL directory for your reference as we will need it to get the .cert files. Once you have installed, proceed.
Step3: Generate Certificate Signing Request [.certSigningRequest]
1. Open “cmd” in administrator mode[If Windows7+]
2. Navigate to the OpenSSL directory
3. Generate a 2048 key using the below command:
openssl genrsa -out mykey.key 2048
4. A file will be created in the bin directory. Now the final file
5. Using the below command:
openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningRequest -subj /emailAddress=provide you apple email id, CN=you name, C=conuntry code”
openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningRequest -subj /emailAddressfirstname.lastname@example.org, CN=Blah Blah, C=US
6. “CertificateSigningRequest.certSigningRequest” is now created.
Step 4: Generate Certificate from Apple
Go to you developer home “https://developer.apple.com/membercenter/index.action#home” and click “Certificates, Identifiers & Profiles”.
Click under “iOS Apps” –> Certificates and click and “+” symbol. You need to create 2 kinds of certificates:
Lets create them both now itself so that it doesn’t bother us later.
First select “iOS App Development” and click continue
On the second page, again click continue. It will ask your CSR file which we already created. Upload the same and click “Generate”. You can download now or later. I would recommend now.
Now do the same process again but select “Distribution” –> App Store and Ad Hoc and rest process is same.
Now you have the development and distribution certificates.
Step 5: Create App Ids
Next thing to do is creating App Ids. This can be seen as categories of apps that you will develop. You can create an app id for individual app or target the same for group. I normally do it for group of apps. Click on “Identifiers” –> App IDs and click “+”.
1. Specify any description
2. Regarding suffix,
a. Explicit, is applicable to a single app and the same name should be used for any apps that you develop.
b. Wildcard, using a package notification. [I would prefer to use this]. Example of this could be, if lets say, I am developing apps for gaming then I create an app Id with wildcard like – com.apps.gaming.*
3. Select all services and click continue.
4. Click Submit and finally Done.
5. Your App Id is generated
Step 5: Register Devices
As you will be testing your apps on a set of devices which you own and use your Apple Id, you need to register them first. Click on “Devices”, then “+”.
Put a name for the device – MyIPhone and UDID of the device. If you don’t know the UDID of the device, connect iTunes and connect your devices. Once it appears on the iTunes, click on the device.
You will see a “Serial Number”, Click on the serial number,
You can copy the UDID and register the device.
Step 6: Create Provisioning Profile
Again, you need to create two provisioning profiles, one for development and one for distribution. You can use one but preferred is two.
1. So click “Provisioning Profiles”, click “+” and select “iOS App Development”.
2. Click “Continue”.
3. Select you AppID and click “Continue”.
4. Select the development certificates available and valid and click “Continue”
5. Select target devices for development and click “Continue”.
6. Put a name for the profile and click generate.
7. You can download the profile now.
8. Repeat the same steps for “Distribution” mode as well.
Step 6: Convert .cer to .p12 formats
Before you can use the certificate and profile, you need to convert the .cer files to .p12 format for Flash Builder. So lets do that.
1. Copy the .cer file downloaded earlier which you want to convert to .p12 in the OpenSSL/bin directory.
2. Generate .pem file using the below command:
openssl x509 –in <download .cer file name> -inform DER -out developer_identity.pem -outform PEM
openssl x509 -in ios_development.cer -inform DER -out developer_identity.pem -outform PEM
3. Convert the .pem file to .p12
openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem –out <to be .p12 file>
openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12
The process is complete. You can use these files to develop, build and test your apps on the registered iOS devices as explained.
Watch this space for more details about tools to be used to deploy apps to iOS devices.