iOS 打包上傳AppStore相關(1)-相關證書配置


  最近一個老項目需要更新迭代,一個新的項目需要上線。有一些自己出現的BUG,也有一些沒搞懂到處翻資料的問題。在此想做一個總結,寫一下總體步驟,盡可能的詳細一些,以及自己的一些理解。有很多步驟因為我們查閱的資料在作者可能無意間覺着是個小問題就跳過去了,然而給我們帶來了許多麻煩。會將我遇到的問題都寫出來,也會隨時修改添加。感謝大家。

 

1.首先,我們需要一個蘋果開發者的付費賬號

  https://developer.apple.com/ 去這個網站申請,至於$99或$299看你自己或公司的經濟實力了。同時我們本篇講述的有關證書、配置文件等的一切都在這個網站的 Certificates, Identifiers & Profiles 這個選項中進行。

 

2.創建發布者證書 Certificates

  打開 蘋果開發者 官網,登陸上賬號。

  點擊左側的 Certificates, Identifiers & Profiles 按鈕,或者中間的 Certificates, Identifiers & Profiles 按鈕都可以,進入創建證書的界面。

  進來之后默認即處在創建證書的界面:

  首先我想先談一下我對這個 Certificates 的理解。起初我認為這個 Certificates 證書是跟你要發布的App有關系的,也就是認為這個Certificates與你的App是唯一綁定的。后來發現確實綁定,但互不為唯一。因為查閱的許多資料都沒有談過這個證書,所以導致我開始理解Certificates和Provisioning profiles之間的關系理解不對。

  我是這樣理解這個問題的:Certificates是你這個Apple Developer的ID對你使用電腦的授權,也就是說,擁有Certificates證書的電腦可以對擁有證書的類型對這個賬號上的App進行一些處理,比如打包發布或者真機、打包測試等等。每一個Apple Developer的ID對應每一台電腦都需要創建一個這樣的證書,也就是這個證書里包含你的Apple Developer的ID信息和電腦的信息,但不包含你要發布的App的信息。

  以上僅僅針對於發布和測試相關的App Store and Ad Hoc打包發布/測試證書和iOS App Development測試兩個證書。

  好了,知道了Certificates的作用之后,我們來創建一個Certificates。

  點擊 + 號,跳轉至創建Certificates的界面

  這里有很多Certificates可以創建。Development選項下的iOS App Development證書是配置測試證書的,是真機測試用的。可能有些人覺着我沒有這個證書依然可以真機測試,確實,在Xcode7之后是這樣的,從 Xcode 7 開始支持普通 Apple 賬號進行免證書真機調試。但區別在於,沒有這個證書你真機測試的應用是有期限的,一般是七天。

  最下面的那個證書,Apple Push Notification Authentication Key,很明顯是使用APNs進行推送的證書。現在我們暫時用不到。

  我們這次的任務是打包上傳,所以我們需要選擇“Production”下的“App Store and Ad Hoc”一項。這個證書是配置打包證書的。有了它你就可以將你的App打包成update AppStore或者測試用的ipa包。

  在此解釋下為什么我的這兩個選項是灰色不可選的。蘋果開發者賬號有兩種,個人級別與企業級別。它們可以創建的這兩種證書的數量是不同的,但都是有限的,兩個或者三個。所以解決方法就是revoke刪除掉一個相對應的證書即可。

  我們選擇App Store and Ad Hoc,點擊continue,進入下一個界面。

  這里它讓我們創建一個Certificate Singing Request,證書簽名請求文件。這個文件的作用是什么呢?剛才我說證書是一個AppleID授權一台電腦測試或發布的權限,那AppleID怎么確認是哪一台電腦呢?或者說,AppleID怎么獲得這台電腦的信息呢?就是這個文件了。

  回到我們的電腦,相信大家都是Mac。打開鑰匙串(在F4鍵中的“其他”中,或者F4直接搜索“鑰匙串”),找到這個界面:

  出現這個界面:

  用戶郵箱必填,填你的AppleID賬號對應的郵箱,其余都可選。最后選擇存儲到磁盤,繼續,會提示你存儲位置。選擇存儲,我們就可以獲得這樣一個文件。

 

  是不是對這個名稱很眼熟?眼熟就對了,這就是我們需要的CSR文件。

  回到剛才那個界面,點擊continue,在下個界面中做如下操作:

    點擊Generate,在新的界面會看到你創建好的證書。點擊download,下載到桌面:

  雙擊這個文件,然后你就可以在你的“鑰匙串”中找到它了。

  注:一般一個開發者帳號創建一個發布證書就夠了,如果以后需要在其他電腦上上架App,只需要在鑰匙串訪問中創建p12文件,把p12文件安裝到其他電腦上。這相當於給予了其他電腦發布App的權限。

  這樣,Certificates證書,就創建並安裝好了。

  

3.創建App IDs

  剛才我們創建的是證書,也就是AppleID對電腦的授權。接下來我們要創建與我們的App相關的東西了。

  回到 Certificates, Identifiers & profiles界面,點擊Identifiers下面的App IDs,出現的是你所有的App IDs。

  同樣的,點擊“+”號進入創建界面:

  需要添加的就是 App ID Description 下的 Name。和下面App ID Suffix下的Explicit App ID中的Bundle ID。Name是你對這個App ID的描述,純英文輸入,一般起名為你的工程名,是給你自己看的標識符。而下面的兩種App ID,就是我們所創建的App ID了。兩者有什么區別呢?

  App ID 全名會被追加 Application Identifier Prefix(一般為 TeamID.),分為兩類:

  • Explicit App ID:唯一的 App ID,用於唯一標識一個應用程序。例如“com.apple.garageband”這個 App ID,用於標識 Bundle Identifier 為“com.apple.garageband”的 App。
  • Wildcard App ID:含有通配符的 App ID,用於標識一組應用程序。例如“*”(實際上是 Application Identifier Prefix)表示所有應用程序;而“com.apple.*”可以表示 Bundle Identifier 以“com.apple.”開頭(蘋果公司)的所有應用程序。
  用戶可在 Developer Member Center 網站上注冊(Register)或刪除(Delete)已注冊的 App IDs。
  根據個人情況,選擇合適的APP ID。Explicit下Bundle ID就是你的工程中的Bundle ID,此Bundle ID唯一。如果你注冊時候出現這樣一個錯誤:
  說明你的Bundle ID被人注冊成App ID了,換一個就可以了。
  在這里我選擇Explicit App ID。
  下面選擇你需要的服務,默認選擇Game Center和In-App Purchase兩項。表示分別在GameCenter和AppStore中上線。一般我們也選上Push Notifications這一條,因為推送是一般App都需要的功能。
  選擇完成之后,就到了這樣一頁:
  

  確認你的選擇。Enabled表示能夠使用,Disabled表示不能使用。如果你剛才勾選了Push Notifications,這里的Push Notifications那一條會提示Configuration,表示尚未配置,需要配置一些信息方可使用。這里不再贅述。我們點擊Register。在下一個界面點擊Done。一個新的App ID就創建成功了。你可以返回Identifiers - All 找到你的App ID。

 

4.創建Provisioning Profiles

  好了,到了最后一步了。

  這個Provisioning Profiles是干什么用的呢,它包含之前我們創建的所有的,Certificates、App ID和你的AppleDeveloper賬號的信息,還根據自身的不同類型包含一些其他信息,比如測試環境下測試手機的UDID等等。只有這些信息全部准確無誤之后,才可以將工程成功打包,並且在測試手機上或者上傳到AppStore的時候准確無誤。

  接下來我們來創建一個發布用的Provisioning Profiles。

  

  如上圖所示來到創建Provisioning Profiles的界面。

  與我們有關的有三個。首先是Development下的iOS App Development文件。這個證書是測試文件,與上面的測試證書配套,屬於真機測試的配套文件。

  Distribution下面的App Store,不多介紹,看名字就懂了。打包上傳App Store使用的。

  Ad Hoc。這個是做測試包分發使用的,包含測試手機的UDID。以后會講如何利用它打測試包生成短連接和二維碼供測試人員安裝。

  選擇App Store選項,點擊continue。接下來,選擇你的App ID,continue,選擇你創建的證書Certificates,continue,起個名字。我們一般起 項目名+文件類型,如 XXXADHoc 等等。

  創建成功,download下載,然后雙擊打開,安裝成功。或者現在不下載,以后會講另外一種配置條件文件的方式。

  與打包上傳AppStore的關於AppleDeveloper這個網站的事情我們就做完了。下一次會講與Xcode相關的問題。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM