This post assumes that you are a member of the iOS Developer Program and that you are familiar with creating a Mobile Project in Flash Builder for Windows. In this scenario you have created your first iPad2 application (HelloApple) and now you want to deploy and test it on the device:
When you first go to run the application you right-click the project and select Run As Mobile Application:
The first time you do this the “Launch method” needs to be configured. In our case we want to create a package so that it can be installed on the iPad2 device. I selected Standard Packaging method which takes awhile to compile but is useful for performance testing the application (release build). Click “Configure package settings”
At first the configuration for the Digital Signature looks fairly straightforward. You just need to provide a Certificate and Provisioning file. These file can be downloaded from the iOS Developer Center but you must first setup these files.
Jeanette Stallons has a great post on how to get the required certificates (the post covers Windows and Mac):
http://www.adobe.com/devnet/air/articles/packaging-air-apps-ios.html
Below is a summary of the steps outlined in the article:
- Enroll in the iOS Developer Program
- Log into the iOS Provisioning Portal
- Create an App ID on the iOS Provisioning Portal
- Use iTunes to get iOS device IDs
- Register your iOS device
- Create a certificate signing request (CSR) file (Generate a CSR on Windows)
- Create developer certificate (CER) on iOS Provisioning Portal
- Convert iOS developer certificate to P12 format (Create P12 on Windows)
Steps 1 to 5 are straight forward. But steps 6 to 8 can be confusing depending on the current state of your provisioning portal. If this is your first time setting everything up then I recommend reading Jeanette Stallions post with the exception of the Mac sections.
If you have followed Jeanette’s post but are still having trouble generating the P12 files then review the notes below.
In order to perform steps 6 to 8 on windows you need to have OpenSSL installed on your Windows Machine. You can download OpenSSL for Windows from here:
http://gnuwin32.sourceforge.net/packages/openssl.htm
Another option for OpenSSL especially if you are looking for a Source Control tool is to download and install msysgit (Git for Windows). Git integrates well with Flash Builder but that is a topic for another post. When installing msysgit make sure to install Git Bash:
If you have Cygwin installed on your system it can also be configured to support OpenSSL but it is probably overkill to install it just for the purpose of using the tool.
The first thing we need to do using OpenSSL is to create a private key with a password:
openssl genrsa -out mykey.key -passout pass:mypassword 2048
Next (see Step 6) create the Certificate Signing Request (CSR) using the private key created in the previous step (mykey.key). The signing request contains important pieces of information that you must provide:
- emailAdress=email@domain.com
- CN=Your Name
- C=Your Country (two character code: United States: US, Canada: CA)
openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningReqest -subj /emailAddress=mymail@gmail.com, CN=Troy Scott, C=CA
Step 7, is creating a new developer certificate. This is done by making a certificate request using the certificate created in Step 6. Click the “Request Certificate” button and upload the CertificateSigningRequest.certSigningRequest file.
| Request Certificate | Choose File and then Submit |
If the process was successful you will have a new developer certificate with a status of “Approved”.
Refresh the Certificates screen and you will have the option to download it. Download the certificate file (developer_identity.cer) and convert it to pem format using OpenSSL utility:
openssl x509 -in developer_identity.cer -inform DER -out developer_identity.pem -outform PEM
This will generate the developer_identity.pem file which will be used with the mykey.key file to generate the P12 file (Step 8):
openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out ipad_dev.p12
When you run this command you will be prompted for the private key password which was “mypassword” in this example. Below is an example of running the command using the Git Bash prompt (openssl):
Next we need to configure the Provisioning File. The developer certificate must be configured and “Approved” before this file can be downloaded. Currently the Status of my Provisioning File is Invalid:
Select Modify and you should be able to see the Developer Certificate that was created and approved. Check the checkbox by the Certificate and click Submit:
Once the status is “Active” the Provisioning file can be downloaded. Now we can configure the Digital Signatures with the following files:
- Certificate: ipad_dev.p12 (full path to the file)
- Provisioning File: AppDev.mobileprovision (full path to the file)
When you select “Run” in the Run Configuration, Flash Builder will prompt you for the private key password (mypassword). Once you enter the password it may take several minutes for the compilation to complete.
| Private Key Password | Packaging |
Once packaging is complete follow the instructions to install ipa package on the iOS device. Refer to the Using Flash Builder 4.5 to package applications for Apple iOS devices post for the remaining details.
Troy