標籤:
iOS開發人員的申請流程
如果你是一個Team Dev,在你打算掏腰包購買iOS開發人員授權之前,最好先問一下你的同事,是否已經有人獲得了開發許可,因為一個開發許可一年內最多可以授權給111個裝置來開發測試。如果你沒有授權許可可以借用,或者你打算最終在iTunes Store中以自己的名義發布你的應用,那麼就準備一張國際信用卡,準備支付99美元來申請一個iOS開發人員授權。
點擊下面連結進入Apple Developer Center
http://developer.apple.com/
點擊頁面左邊中部的iOS Dev Center進入iOS開發中心
點擊頁面頂部右側的Register按鈕,
然後點擊Get Started按鈕進入申請流程
Apple ID
在申請流程的第一步是選擇Apple ID,如果你已經有一個Apple ID,曾經在Apple的市集中購買過應用,那麼這裡可以選擇”Use an existing Apple ID”,否則需要點擊”Create an Apple ID”來建立一個帳號。最後點擊繼續按鈕。
Personal Profile
這裡是一張表單,分為三個部分,建立Apple ID(如果之前選擇的是建立),安全資訊(Security Information),設定檔(Personal Information),注意所有的選項都需要填寫!,填寫完畢之後繼續到下一個頁面。
Professional Profile
這一頁是開發人員的一些職業資訊。注意在第一項中選擇iOS,如果你是學生,請在第二個問題後勾選Check this box if you are currently enrolled in a college or university. 全部選擇完畢後繼續。
Legal Agreement
這頁是一份協議,仔細閱讀後勾選下面的框框然後繼續。
Email Verification
到剛才註冊的郵箱裡等著收郵件,將一封來自Apple Developer Support的信中的驗證碼填入這一頁裡的輸入框後,點擊繼續。
看到這個頁面,你就完成了開發人員的註冊流程,並且會收到一封確認郵件。
可以開發並測試你的應用程式了嗎? 不行,因為你只是登了記,想要在你的裝置上測試開發,現在還不具備這個資格。
點擊剛才的註冊成功頁面下方的一個繼續按鈕,再在接下來顯示的頁面右方點擊”Join The Developer Programs”,來到下面的這個頁面。
http://developer.apple.com/programs/start/standard/
從流程圖上來看,我們至少還需要三步才能申請。準備好了嗎?點擊繼續。
Apple ID
再次確認你的Apple ID,因為我們剛才已經登記成功,所以這裡只看右面的Existing Apple Developer部分。這裡有三個選項,如果你是第一次申請而且不是學生,選擇第一項;如果你是第一次申請但你是學生,選擇第二項;如果你已經申請過這個授權但是想為你的授權帳號添加一些附屬的功能,選第三項。選好之後繼續。
發現流程有所變化,進入了申請付費的流程
Enter Account Info
首先需要選擇你的身份是個人還是公司,如果是公司申請需要提供公司合法名稱,法人名稱,以及一些business document。這裡只對個人申請作介紹。
點擊Individual後,需要用剛註冊的帳號登陸一次,進入填寫銀行帳號的階段。
請注意這裡的兩個IMPORTANT和兩個EXACTLY,帳號的姓名必須與信用卡上的一模一樣,賬單郵寄地址也必須與你接下來要在Apple Online Store付費時使用的郵寄地址一模一樣。
Select Program
接下來一頁是選擇申請的平台,iOS和Mac都是99美元一年,Safari的外掛程式開發是免費的。我們選擇iOS,然後繼續。
Review & submit.
在這一頁檢查你的填寫資訊是否正確,如果正確無誤,點擊繼續。
Agree to License
仔細閱讀開發人員授權協議後,點擊下面的選框然後繼續。
Purchase Program
如果你在之前填表的時候選擇的是China,那麼這個時候你會看到一個大大的黃色驚歎號,並且告訴我們Apple Online Store在咱們國家是不好用的。
沒有關係,Apple也提供了另一條付費的途徑,在頁面左邊的中部可以下載一個PDF,將你的信用卡資訊填進去,然後傳真到頁面指定的那個電話號碼之後,你就可以等著收郵件了。
Apple網站上說是需要3-5個工作日,我等了差不多兩個星期吧,先是信用卡被划走了99美元,然後收到了一封收據郵件,再後來收到了一個啟用帳號的確認郵件,才最終完成了開發人員授權的申請,成為一個合法的iOS開發人員。
上一篇我介紹了如何申請成為合法的iOS開發人員,這篇文章會詳細介紹如何使用授權檔案(.mobileprovision)和簽署憑證檔案(.cer)
在繳費成功後會收到一份來自Apple Developer Suport的確認郵件,如.
在郵件裡有一個Login按鈕,點擊後可以進入Apple Developer測試人員中樞。點擊圖中的iOS Provisioning Portal,進入開發人員授權設定系統。
在設定介面中,可以選擇點擊頁面下方的助手來運行嚮導。
或者直接從左邊的導航來設定,我在這篇文章會主要介紹如何通過導航設定開發人員授權以及認證。不過在此之前,我要先簡單介紹一下Apple開發人員授權的一些基本知識。
Apple對其裝置有嚴格的使用限制,任何應用程式都必須經過iTunes Store下載安裝,要麼直接從裝置裡下載,要麼從電腦中通過iTunes下載後同步到裝置中。所以沒有經過破解的裝置是沒有辦法直接安裝IPA檔案的。但是Apple也提供了一套面向開發人員的機制,讓他們可以在指定的裝置上安裝IPA檔案來測試和開發,這個機制的核心就是開發人員授權。我前面介紹的申請流程就是申請獲得一個可以在裝置中安裝運行IPA檔案的開發人員授權。
使用開發人員授權是一套完整而且相對合理的流程,它可以分為下面幾個階段:
- 授權裝置,將開發人員授權與指定的裝置綁定在一起,使得這些裝置可以自由安裝開發人員發布的IPA。
- 產生授權檔案.mobileprovision,這個檔案會被打包進入IPA,實現裝置與授權開發帳號的綁定。
- 產生認證檔案.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認證是一件非常痛苦的事情,下面我就詳細介紹以下:
- 首先需要在下面的連結下載OpenSSL。
http://www.slproweb.com/products/win32openssl.html
如,你需要下載Visual C++ 2008 Redistributables 和 Win32 OpenSSL v1.0.0d Light
- 下載安裝後,在C盤下就有一個OpenSSL-Win32的安裝目錄。
- 以管理員身份開啟命令列進入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 "/[email protected], 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項目了!
iOS開發人員帳號申請指南