蘋果開發者中心 Certificates,Identifiers & Profiles 備忘錄

 

概述:ios

首先得描述一下各個證書的定位,做用,這樣在製做的時候心中有譜,對整個流程的把握也會準確一些;windows

一、Certificate 開發者證書(分爲開發和發佈兩種,類型爲ios Development,ios Distribution)xcode

這個是最基礎的,不管是真機調試,仍是上傳到appstore都是須要的,是一個基證書,用來證實本身開發者身份的;瀏覽器

APNS證書是給服務器開發push notification用的,詳見3.服務器

 

 

 

二、Identifiers:標識app

2.一、App ID,這是每個應用的獨立標識,能夠包含通配符也能夠不含,在設置項中能夠配置該應用的權限,好比是否用到了PassBook,GameCenter,以及更常見的push服務,若是選中了push服務,那麼就能夠建立生成下面第3條所提到的推送證書,因此,在全部和推送相關的配置中,首先要作的就是先開通支持推送服務的appID;ide

格式如:com.company.product.*, 或 com.company.product.1.0。測試

 

三、推送證書(分爲開發和發佈兩種,類型分別爲APNs Development ios,APNs Distribution ios)ui

APNS證書是給服務器開發push notification用的;該證書在appID配置(標題2.1)中建立生成,和開發者證書同樣,安裝到開發電腦上;spa

生成是如上圖,須要生成兩個證書,Development SSL Certificate和Production SSL Certification,前者用於開發測試,後者用於發佈,若是是使用第三方推送或是本身後臺寫的PHP推送服務器,要使用後者。

注意若是程序支持game center, in app purchase,push notification,這個app id中不能包含通配符「*」。 

 

四、Devices 管理測試設備:

使用你的測試設備的UUID添加進來,而後在Profiles裏面選擇這些設備。生成Provisioning Profiles後再添加的測試設備,如想要用它進行真機調試,須要更新Provisioning Profiles,編輯對應Provisoning Profiles,將設備添加進來。

刪除設備會使全部關聯這個設備的Provisioning Profiles失效,全部不要隨便刪,要刪在下次續費時刪除。

 

 

五、Provisioning Profiles

這個東西是頗有蘋果特點的一個東西,該文件將App ID,開發者證書,硬件Device綁定到一起,在開發者中心配置好後能夠添加到Xcode上,也能夠直接在Xcode上鍊接開發者中心生成,真機調試時須要在PP文件中添加真機的udid;是真機調試必備之珍品;

Provisioning Profiles配置文件,分爲兩種

   5.一、 Development 開發版,創建開發版本的profile時只能選擇證書中的開發證書,而且支持多選多個證書,多個開發人員能夠共用一個profile;同時能夠選擇多個3創建的設備;
   5.二、 Distribution 正式版,此版本profile分爲

       a. App Store版本,是發佈到App Store時使用的profile,建立時先選擇Identifiers中的AppID,再選擇一個證書,選擇時應該你建立的證書;

       b. Ad Hoc版本,Ad Hoc是給某些企業發佈緊企業內部使用的;

日常咱們的製做流程通常都是按以上序列進行,先利用開發者賬號登錄開發者中心,建立開發者證書,appID,在appID中開通推送服務,在開通推送服務的選項下面建立推送證書(服務器端的推送證書見下文),以後在PP文件中綁定全部的證書id,添加調試真機等;

在Xcode中管理,5.0以後,打開Preference,選擇Accounts;點擊View Details...

點擊刷新,能夠刷新XCode和設備上的Provisioning Prefiles;同時能夠製做Development Provisioning Prefiles和Distribution Provisioning Prefiles。

 

如今上具體流程:

一、開發者證書製做安裝步驟:大概過程是:選擇受權類型,開發仍是發佈->提交在mac設備中建立的公鑰-> 下載證書,並安裝

  1.一、建立證書籤名請求公鑰

    打開應用程序中的「鑰匙串訪問」,在菜單裏點擊「證書助理」下面的「從證書代理請求證書」,注意下面不要選中任何行,不然菜單會變。

輸入本身的註冊Email,經常使用名稱能夠寫詳細一點,好比「Unfish Dev Key」,下面選中「存儲到磁盤」,點繼續,可能會出現未知錯誤,多試幾回就OK了。

1.二、建立開發者證書

在瀏覽器中進入開發者中心的Certificaties導航頁面,點擊右上角的加號;

證書類型選擇iOS App Development,點擊繼續;

下個界面須要一個CSR文件,就是咱們在1.1中建立的公鑰;選取你生成的csr文件,點擊生成。

點擊生成後會生成一個cer證書,如圖所示;

點擊Download,下載下來,雙擊打開雙擊會自動導入鑰匙串,導入類型選擇「登陸」就能夠。

 

1.三、添加你的測試設備這一步只是開發證書有用,發佈證書是不須要這個東西的。

把手機連到電腦上,在xcode的windows菜單下打開Organizer,左邊的devices下面會列出你的手機,右邊的Identifier項就是你的手機的udid,複製下來,待會要用。若是這個手機尚未設置過做爲開發機,這個界面上應該會有兩個按鈕,點一下就能夠把它設爲開發機,在xcode裏點Build and go的時候就能夠自動的安裝你的程序到手機上,不須要經過ITunes了。

在開發者中心的左邊Devices導航頁,點擊右上角Add Device;

起個本身認識的名字,把udid粘貼進去就能夠了,在全部設備中會出現你的設備。

 

1.四、建立App ID:

咱們須要爲應用建立一個App ID,他是識別這個應用的惟一標識,在開發者中心的Identifier導航頁的App ID頁面,點擊右上角建立新的App ID,這個App ID須要跟程序的info.plist裏面定義的程序Identifier相對應;

爲App ID命名,注意命名規則:

選擇App ID類型:

Explicit類型是不使用*通配符,支持全部App Services;Wildcard App ID類型,可使用*通配符命名。

若是這裏只輸入一個*,那麼info.plist裏Bundle identifier寫什麼均可以,使用*通配符,適用於批量的,沒有推送,Game Center等服務的應用。若是你的應用要用到推送、GameCenter、PassCard等服務請勿使用。

格式規則:蘋果建議使用域名倒序的方式命名;

     若使用通配符com.*命名,那麼在應用的info.plist中Bundle identifier只要以com.開頭,後面寫什麼均可以。

繼續點擊提交建立成功。

  

1.五、建立Provisioning Prefiles文件

  進入開發者中心的Provisioning菜單,點擊右上角建立;

Provisioning profile選擇iOS App Development;

選擇對應應用的App ID;

選擇所使用的證書;

選擇對應要使用的設備,我通常全選,省事兒;

取個見名知意的名兒,並點擊生成;

生成之後下載這個provisioning文件,把下載下來的文件拖到Dock上的Xcode的圖標上就會自動安裝進去。

而後退出xcode從新打開,打開你的項目,打開Project菜單下面的Edit Project Settings,進入Build頁面,找到下面的Code Signing Identity,把Any iPhone OS Device項後面選中你的開發者證書,而後就能夠把項目的編譯目標設爲Device(而不是模擬器),試一下Run。程序應該會編譯完並自動安裝到你的手機上,並自動啓動了。

 

 

二、發佈證書製做安裝步驟:

2.一、同1.1同樣,咱們建立證書籤名請求公鑰,若是已經建立過,就直接使用之前的那個就行(CSR文件)。

進入開發者中心Certificates裏面的Distribution頁面,選擇右上角添加;

證書類型選擇Production App Store and Ad Hoc;

以後步驟和建立Development證書同樣,提交SRC文件,建立成功;

而後下載這個證書,雙擊導入,類型選登陸。

2.二、建立Distribution Provisioning Profiles

進入開心者中心Provisioning裏面的Distribution頁面,點擊右上角添加新的Provisioning;

類型選App Store,(若是選了Ad Hoc,就只有你添加過udid的手機才能安裝這個程序了,通常用於企業賬號,這裏咱們不介紹);

以後步驟和建立Development證書基本一致(少了一個選擇設備步驟),Distribution證書選好,App ID選好,取好名稱,建立完成;下載這個文件,拖到xcode的圖標上安裝完成。退出xcode再從新打開,不然加載不了你剛剛添加的那個證書,會出現Provisioning無效的提示。

打開工程,進入Build Settings頁面,在Code Signing Identity裏面的Any iPhone OS Device後面對應的值選中你的那個Distribution的證書。而後就能夠編譯程序了。

    

三、在Xcode中建立Provisioning Prefiles

在Xcode中管理,5.0以後,打開Preference,選擇Accounts;點擊View Details...

點擊添加Development Provisioning Prefiles,步驟和MemberCenter添加過程基本一致;

   帳號密碼換了,驗證失敗,下回在給你們介紹吧。

 

 

四、如何要把測試版發給別人: 

  • a.進入member center,把device id註冊爲測試機;
  • b.創建一個Ad hoc類型的provisioning profile,包含剛纔註冊的device id ;
  • c.打包時code signing使用剛生成的文件 ;
  • d.把ipa給要測試人員便可;

 

五、程序發佈到AppStore的步驟:

  1. 在開發者中心的Distribution導航裏面的App Store頁面,在下面的App Store下面的Learn More展開,就能夠看到Go to iTunes Connect的連接。進入之後點擊Manage My Application,就能夠添加本身的程序了。
  2. 須要選擇程序的語言,國家,介紹等等基本信息,而後下一步上傳程序和其它圖片。這個地方上傳的程序,就是把你的項目編譯之後生成的那個.app的目錄直接壓縮成zip上傳,(這個.app目錄裏面的任何文件都不能夠更改,不然簽名就不對了)。你須要準備一張512×512的png圖片做爲大Logo,還須要準備5張程序運行的界面截圖,在這個頁面上挨個選Choose file,再點擊upload file,出現對號就沒問題了。而後選擇程序的價格,默認有不少能夠選,free是免費,1是0.99美圓,2是1.99美圓,諸如此類。若是非免費程序,你還得準備一份購買協議。
  3. 再點下一步,就能夠等待程序審覈了。
相關文章
相關標籤/搜索