引
眾所周知,apple是一個比較封閉的生態,不同于android的隨意安裝,ios開發者想要看到自己開發的app成功地在自己手機上跑起來,甚至上架app store,簡直是一件喜極而泣奔走相告的事情,相信每一個ios開發者,也都經歷過被各種證書折磨得頭疼心累得過程,而我也正在這個過程之中...現在初步弄清楚了真機調試證書的獲取流程,能夠讓app在真機上跑起來了,趕緊記錄下來。
當然,要想正規地真機調試,第0步永遠是要有一個開發者賬號,這也是ios開發門檻比android高的原因,android機器便宜,隨意測試,隨意傳播下載,而開發ios應用,電腦手機都貴T T,好不容易弄出來了,想在手機上看還得要支付開發者賬號得費用,想傳播真是麻煩無比,話說回來,開發者賬號分為個人、公司、企業三種,個人和公司的是$99一年,企業的是$299一年,注意這里是美元不是軟妹幣,所以一般個人開發者到這里就望而卻步了。。。
當你有了開發者賬號之后,就可以申請證書進行真機調試了,下面開始講解:
首先進入蘋果的開發者網站:https://developer.apple.com
進入證書管理頁面:
如下圖,在頁面右上角點擊Member Center,進入個人管理中心。
進入后入下圖會要你登錄開發者賬號:
登陸后就可以管理個人的一些東西了,如下圖,我們要選擇的是“Certificates,Identifiers&Profiles”這一項,如它的描述所言,管理你app的證書、標志、設備和描述,順便一說,選擇“iTunes Connect”可以管理你發布的app,要提交app store審核也在這個地方。
進入后顯示如下圖,可以看到有ios的應用,mac的應用和瀏覽器的擴展,當你的開發者賬號有相應的開發權限時則會在其板塊下顯示詳細內容,這里我們看ios Apps部分,板塊中四個部分Certificates(證書)、Identifiers(標志)、Devices(設備)、Provisioning Profiles(配置文件),分別點進去可以查看各個部分下我們賬號已有的內容,這里我們先點第一項Certificates(證書)看看。
查看和創建證書:
進去后如下圖,先看左邊一欄,還是剛才那四個部分,這里都可以方便的選擇查看,而現在我們在的界面就是我們所擁有的證書界面了,證書的種類多種多樣,而開發一個app最基礎的證書有兩種,一個就是我們現在講的真機調試證書,你想要把編寫的app在自己手機上真機調試,就必須有這個證書;另一個就是發布證書,你想要把app發布到app store審核以供其他人下載,就必須要有這個發布證書。我們看圖中的右邊部分,顯示了所有擁有的證書,三列第一列顯示你給證書定義的名字,第二列顯示你的證書的類型,就包括真機調試證書和發布證書等等,如圖中的“iOS Development”就表示真機調試證書,“iOS Distribution”表示發布證書,第三列顯示證書的過期時間,超過這個時間證書就失效了,這里我已經創建過證書,所以看到四個證書,點擊其中第一個真機調試證書,可以刪除(慎重!)和下載,至于下載了有什么用,待會再說。當第一次進來的時候,列表是沒有證書的,這里就需要點擊右上角的加號來創建證書。
點擊加號后如下圖,我們要創建的是Development測試部分中的第一項,注意這個測試證書每個開發者賬號只能創建兩個,然后到最下方點擊continue進入下一個頁面。
這個頁面就是告訴你一些關于證書的事情,英文好有興趣的可以看看,大意是說需要用到電腦的鑰匙串配置文件,后續再說,可以直接點擊continue進入下一步了。
下一個頁面顯示需要我們上傳一個鑰匙串配置文件,那什么是鑰匙串配置文件呢,需要按下面的步驟來一步步創建:
創建電腦鑰匙串:
點擊mac上的火箭圖形進入Launchpad,找到鑰匙串訪問的圖標,如下圖:
打開后點擊左上角鑰匙串訪問-->證書主力-->從證書頒發機構請求證書。
打開后出現證書請求的對話框如下圖,這里的目的是獲取剛才我們在創建證書時需要的鑰匙串文件,有兩種獲取方式,一種是電子郵件形式,一種是直接存儲到電腦上。如果選擇用電子郵件的話,上面兩個需要填電子郵件的文本框就是接收的郵箱,這兩個郵箱一定要填成一樣的;為了方便也可一直選擇存儲到磁盤,但電子郵件地址還是要填寫且一致,不過反正用不著可以隨便填寫, 只要一樣就好了,存儲到磁盤點擊繼續的話會要你選擇存儲的位置,一定要讓自己找得到。
成功后會得到一個CertificateSigningRequest 文件,也就是常常看到的CSR文件。
繼續創建證書:
鑰匙串CSR文件創建好后,就可以回到剛才的網站界面,選擇我們剛剛創建的鑰匙串配置文件上傳,點擊Generate就可以創建成功了,然后點擊Download將其下載到我們的電腦上,這樣我們就得到這個真機調試的證書cer文件,然后,雙擊這個文件,一定要雙擊才會將證書安裝到鑰匙串中,否則使用是會有問題的,你雙擊后看到它閃了一下就可以了,在鑰匙串中是可以找到這個文件的。
至此,我們已經完成第一步了,注意,這只是第一步哦,不要以為弄到證書了就可以萬事大吉了,還早呢,不得不說實在是...太麻煩了。好啦,繼續我們的工作。
創建工程標志:
現在我們到Identifiers部分中來,給我們的工程創建一個app ID,也就是工程標志,或者工程簽名。在界面左側點擊Identifiers部分中的App IDs,右邊可以看到已經創建的標志列表,點擊加號來創建新的標志。
創建時需要填寫Name用來方便后續找到這個標志,然后在App ID Suffix中填寫App ID,也就是工程標識,這里有兩種標識,一種是Explicit App ID固定標識,對應于一個工程,如果有多個工程,也可以選擇Wildcard App ID廣域標識,可以對應多個工程。標識的填寫方式它也給出了示例。
提交后我們就獲得了一個工程的標識,這一步就可以結束了,還算簡單,進入下一步。
添加設備:
這里添加的設備是允許真機調試的設備,不得不說蘋果的管控真是嚴格啊。。。每個賬號允許添加100個設備吧,點擊Devices部分的All可以查看已經添加的設備,同樣的點擊右上角的加號可以創建新設備信息,這里就不貼圖了。要創建新的設備信息,需要設備也就是iPhone或者iPad的UDID,也就是唯一標識符,獲取的方法很多,iTunes、Xcode以及很多軟件都可以看到,這里就不細說了。
知道設備的UDID后,就可以添加設備了,這里可以添加單個設備也可以添加多個設備,為了避免出錯最好還是單個添加,填上你給設備起的名字和查到的設備UDID后,就可以添加了。
創建PP配置文件:
現在終于到了獲取證書的最后一個步驟了!簡直不容易,四個部分我們已經走完了三個,從創建證書,到創建工程標識,到創建設備信息,雖然我們都添加了,但是這些互相之間是零散的,并沒有關聯起來,而這最后一步就是要將證書、工程標識、設備信息融合起來了,這樣才可能統一管理吧,所以對于最后一個部分:Provisioning Profiles配置文件,我的理解就是把上面的信息合起來配個一個具體的工程,這樣才方便管理,如果有不對的地方希望指教一下~
與上面步驟一樣,點擊PP部分的All之后,點擊右上角的加號創建新的PP配置文件,也不配圖了懶...
創建時選擇第一個調試部分的真機iOS App Development真機調試文件,continue。
這里選擇App ID,也就是第二個部分中添加的工程標識,選擇剛才創建的要調試的工程標識就好了。continue。
接下來添加證書信息,也選擇剛才創建的真機調試的證書就好了,continue。
接下來添加設備信息,其實可以把所有設備都選了,免得后來麻煩嘛,continue。
最后一步就是起名了,建議起好找好記得,不然后來太多了容易找不到,然后點擊Generate生成就好了。
創建之后將其下載下來到電腦上,會得到一個mobileprovision文件:
與之前下載的證書文件一樣,雙擊這個文件,來把它安裝到Xcode中去,才能正常使用,看到閃了一下就表示安裝了。
至此,我們的準備工作基本完成了,下一步就是去Xcode里設置來真機調試了。
Xcode中設置工程:
第一步:在工程的Supporting Files下,找到.plist文件,然后在右邊的列表中找到Bundle identifier行,設置成與我們剛才創建的工程標識一致;
第二步:點擊工程名(最上面藍色的),中間列表選擇TARGETS下的工程同名文件,于右邊的列表中找到Code Signing部分,找到Provisioning Profile項選擇我們剛才創建并安裝的PP配置文件,還是Code Signing部分中,找到Code Signing Identity行,下屬的四個全部改成我們創建并下載的證書cer文件,注意,不是PP文件;
第三步:在中間列表中的PROJECT下選擇工程同名文件,進行與第二步同樣的修改。
真機連接調試:
至此所有工作全部完成,已經可以進行真機調試了,可喜可賀?,F在,連接設備,解鎖設備,在原來Xcode中選擇模擬器的地方選擇自己的設備,如果沒連接好,會顯示“iOS Devices”,連接好了會顯示你的設備名。點擊運行,看你的手機吧~