在繳費成功後會收到一份來自Apple Developer Suport的確認郵件,如下圖.
在郵件裡有一個Login按鈕,點擊後可以進入Apple Developer測試人員中樞。點擊圖中的iOS Provisioning Portal,進入開發人員授權設定系統。
在設定介面中,可以選擇點擊頁面下方的助手來運行嚮導。
或者直接從左邊的導航來設定,我在這篇文章會主要介紹如何通過導航設定開發人員授權以及認證。不過在此之前,我要先簡單介紹一下Apple開發人員授權的一些基本知識。
Apple對其裝置有嚴格的使用限制,任何應用程式都必須經過iTunes Store下載安裝,要麼直接從裝置裡下載,要麼從電腦中通過iTunes下載後同步到裝置中。所以沒有經過破解的裝置是沒有辦法直接安裝IPA檔案的。但是Apple也提供了一套面向開發人員的機制,讓他們可以在指定的裝置上安裝IPA檔案來測試和開發,這個機制的核心就是開發人員授權。我前面介紹的申請流程就是申請獲得一個可以在裝置中安裝運行IPA檔案的開發人員授權。
使用開發人員授權是一套完整而且相對合理的流程,它可以分為下面幾個階段:
1,授權裝置,將開發人員授權與指定的裝置綁定在一起,使得這些裝置可以自由安裝開發人員發布的IPA。
2,產生授權檔案.mobileprovision,這個檔案會被打包進入IPA,實現裝置與授權開發帳號的綁定。
3,產生認證檔案.p12,這個檔案也會被打包進入IPA,實現應用發行商的簽名以及身分識別驗證。
除此之外,開發人員授權系統還提供了開發(Development)和發布(Distribution)兩個不同的渠道。開發測試的時候需要裝置的綁定而實現在裝置上單獨安裝IPA,發布的時候則不需要綁定裝置。所以開發與發布需要使用不同的.mobileprovision與.cer檔案。
下面回到剛才的開發人員授權系統,我先來介紹一下如何在開發階段使用授權與認證。
—————————-
授權裝置
—————————-
點擊左側導航的Device,進入授權裝置的頁面,點擊右上方的Add Device按鈕可以添加一個裝置。
添加裝置的時候可以指定裝置的名字(隨便寫),以及裝置的UID(Unique Identifier)。每一個Apple的裝置都有一個唯一的識別碼,獲得這個識別碼的方法很簡單,將你的裝置串連到電腦,然後在iTunes裡找到你的裝置資訊(如下圖),點擊圖中紅色方框的位置,裝置UID就會顯示出來。可以直接通過Ctrl + C (蘋果是Command + C)可以把UID拷貝到剪下板。
—————————-
添加App ID
—————————-
點擊左側導航的App IDs按鈕可以進入應用程式ID的配置頁面,可以點擊頁面右方的New App ID按鈕添加一個新的應用。這個ID對應的是即將開發與測試的應用程式。如下圖,在description裡添加一個單一應用的名稱(不支援特殊字元),然後在最下面的Bundle Seed ID裡面填入一個含有domain格式的字串(如com.jamesli.appname)。Bundle Seed ID是一個集合了開發商與應用程式的資訊,格式為(com.[開發商].[應用]),這裡可以指定為單一應用,也可以指定為全部應用。如果是單一應用,建議剛才填寫的description與Bundle Seed ID的最後一項相同(如angrypigs和com.jamesli.angrypigs),如果是全部應用,可以使用這樣的Bundle Seed ID: com.jamesli.*
—————————-
申請開發人員認證
—————————-
申請認證的流程在MAC和WIN上是不同的。我分別介紹:
MAC
在Applications->Utilities裏手動開啟Keychain Access。從頂部功能表列裡Keychain Access -> Certificate Assistant -> Request a Certificate from Certificate Authority. 在新彈出的視窗中填寫你的資訊後選擇Save to disk,就會在案頭儲存一個CertificateSigningRequest檔案。(如下圖)
WINDOWS
在Windows下申請Apple認證是一件非常痛苦的事情,下面我就詳細介紹以下:
1,首先需要在下面的連結下載OpenSSL。
http://www.slproweb.com/products/win32openssl.html
如下圖,你需要下載Visual C++ 2008 Redistributables 和 Win32 OpenSSL v1.0.0d Light
2,下載安裝後,在C盤下就有一個OpenSSL-Win32的安裝目錄。
3,以管理員身份開啟命令列進入OpenSSL-Win32/bin檔案夾,如果你不是管理員,需要先在命令列中鍵入下面的命令:
set RANDFILE=.rnd
鍵入下面的命令,產生一個private key:
openssl genrsa -out mykey.key 2048
然後鍵入下面的命令,申請一個CertSigningRequest檔案,注意emailAddress後面是你的郵箱,CN後面是你的名字,C後面是國家
openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningRequest -subj "/emailAddress=yourAddress@example.com, CN=Common Name, C=CN"
這樣在OpenSSL-Win32/bin下面就產生了一個CertificateSigningRequest.certSigningRequest檔案,注意任何錯誤提示都不要忽略,否則即使產生了檔案也可能無法使用。
———————————————————————————————–
這個過程請不要使用Chrome瀏覽器
返回開發人員授權系統的Certificate頁面裡,點擊頁面右方的Request Certificate申請一個認證,然後點擊頁面下方的按鈕上傳產生的certSigningRequest檔案,這樣就完成了認證的申請流程。申請成功後,Certificate頁面裡就有了一條認證,重新整理幾次頁面後認證的狀態就變成Issued,點擊download按鈕可以下載一個cer檔案。
接下來是通過cer檔案產生p12檔案的過程。因為Flash發布iOS應用需要的認證檔案格式是p12。這個流程在MAC和Windows上也是有區別的。
MAC
點擊下載的.cer檔案,檔案會自動在Keychain Access裡開啟,可以右鍵點擊key匯出一個p12檔案,如下圖:
WINDOWS
Windows下產生p12仍然比較麻煩。首先使用管理員身份開啟命令列進入OpenSSL-Win32/bin檔案夾,如果不是管理員身份則同樣需要先運行下面的命令:
set RANDFILE=.rnd
複製代碼
為了操作方便,將下載的cer檔案拷貝到bin檔案夾下,然後運行下面的命令列產生一個pem檔案
openssl x509 -in developer_identity.cer -inform DER -out developer_identity.pem -outform PEM
複製代碼
然後運行下面的命令產生一個p12檔案:
openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12
複製代碼
在輸入了兩次密碼之後,便會在bin檔案夾下有一個iphone_dev.p12的檔案。
——————————-
使用開發人員授權
——————————-
正如上面我們提到的,如果要發布一個可以在指定的裝置上單獨安裝的IPA,則必須使用開發人員授權檔案.mobileprovision。這個檔案可以從開發人員授權系統中申請獲得。
點擊左側導航的Provisioning進入授權頁面,如圖點擊右側的New Profile按鈕建立一個新的授權檔案。
在建立頁面中填入名稱,選擇建立好的認證,以及指定裝置(可以多選),提交後就可以產生一個授權帳號。並且可以下載一個mobileprovision檔案到本地。
到現在,我們就具備了Flash發布iOS應用的兩個重要檔案,.mobileprovision和.p12,返回Flash,在發布設定的Deployment選項卡中填入這兩個檔案(如下圖)。這樣就可以在指定的裝置中開發iOS項目了!