前言
- 基于本人對蘋果的開發(fā)流程的渴望性宏。所以很多東西一旦自己經(jīng)歷了阁危,或者是別人經(jīng)常會用到的時候玛痊,我就喜歡研究。并將自己以及別人的心得記錄下來欲芹,方便自己及他人學(xué)習(xí)卿啡。
- 本篇,我將按照自己的思路對iOS應(yīng)用上架整體流程進(jìn)行講解菱父,本文也是iOS證書申請颈娜、開發(fā)、打包浙宜、排查等系列教學(xué)中的一部分官辽,歡迎各位朋友擴(kuò)展學(xué)習(xí)。
博文回顧
在前面我完善了我的iOS開發(fā)者證書的那些事文章粟瞬,開篇就講到了關(guān)于發(fā)布時的必備條件同仆,在這里我就不再累贅。直接進(jìn)入本文主題裙品。
上架前準(zhǔn)備工作
??我們需要事先完成這幾個步驟俗批,確保接下來的工作能夠順利進(jìn)行。Boss才會對我們的工作表示認(rèn)可??
1市怎、注冊App ID(應(yīng)用ID)
App ID
是識別不同應(yīng)用程序的唯一標(biāo)示符岁忘。每個App都需要一個App ID
或者App標(biāo)識。目前有兩種類型的App標(biāo)識:一個是精確的App ID
(explicit App ID)区匠,一個是通配符App ID
(wildcard App ID)干像。 使用通配符的App ID
可以用來構(gòu)建和安裝多個程序。盡管通配符App ID
非常方便驰弄,但是一個精確的App ID
也是需要的麻汰,尤其是當(dāng)App使用iCloud或者使用其他iOS功能的時候,比如Game Center戚篙、Push Notifications或者IAP五鲫。關(guān)于如何創(chuàng)建App ID
,蘋果官方有相關(guān)的文檔說明??注冊App IDs
2岔擂、創(chuàng)建Distribution Certificate(發(fā)布證書)
發(fā)布證書,也是根證書。它是所有應(yīng)用發(fā)布的基礎(chǔ)何吝,當(dāng)你創(chuàng)建過一次根證書之后,就不需再創(chuàng)建点待。創(chuàng)建的過程我以前的文章有提及過開發(fā)證書的創(chuàng)建,發(fā)布證書的創(chuàng)建過程類似弃舒。??iOS開發(fā)者證書的那些事
3癞埠、創(chuàng)建商店P(guān)rovisioning Profile(商店描述文件)
和開發(fā)期間使用的開發(fā)描述文件類似,我們 App 上架到 AppStore 的時候也需要創(chuàng)建一個對應(yīng)的描述文件聋呢,不過有一點(diǎn)不同的是苗踪,該類型的描述文件不需要選擇任何設(shè)備就能創(chuàng)建。創(chuàng)建過程也非常簡單削锰,可參考開發(fā)描述文件的創(chuàng)建過程通铲。
4、Build Settings(生成設(shè)置)
我們需要在工程中進(jìn)行相應(yīng)的配置器贩,才能提交到 AppStore颅夺。對Code Signing
中的Code Signing Identity
和Provisioning Profile
兩項(xiàng)進(jìn)行配置。
5蛹稍、Deployment Target(部署目標(biāo))
非常有必要說下deployment target吧黄,Xcode中每個target都有一個deployment target,它指出app可以運(yùn)行的最低操作系統(tǒng)唆姐。不過拗慨,一旦應(yīng)用在App Store中生效,再去修改deployment target奉芦,你要考慮到一定后果赵抢。如果你在更新app的時候提高了deployment target,但是已經(jīng)購買應(yīng)用的用戶并沒有遇到新的deployment target声功,那么應(yīng)用就不能在用戶的移動設(shè)備上運(yùn)行昌讲。如果用戶通過iTunes(不是設(shè)備)下載了一個更新過的app,然后替代了設(shè)備上原先的版本减噪,最后卻發(fā)現(xiàn)新版本不能在設(shè)備上運(yùn)行,這確實(shí)是個問題车吹。
對此有兩個方法:
當(dāng)你決定提高現(xiàn)有app的deployment target時筹裕,要在新版本的版本注釋中進(jìn)行說明。如果你提前告知用戶窄驹,那么至少有一點(diǎn)朝卒,你已經(jīng)盡力阻止問題的發(fā)生了。
對于一款新app乐埠,我經(jīng)常會把deployment target設(shè)置為最近發(fā)布的系統(tǒng)版本抗斤。因?yàn)樾耰OS版本發(fā)布后囚企,滲透率的增長速度是令人難以置信的。很多人認(rèn)為提高deployment target會失去大部分市場瑞眼,這個說法并不準(zhǔn)確龙宏,比如iOS 6,iOS 6發(fā)布后一個月伤疙,超過60%的設(shè)備已經(jīng)進(jìn)行了更新银酗。但對Android而言,就是另外一回事了徒像,Android用戶并不會像iOS用戶那樣熱衷于更新操作系統(tǒng)版本黍特。
iTunes Connect
- 在提交App之前,我們需要進(jìn)入到iTunes Connect里面創(chuàng)建我們的App記錄锯蛀。
- 然后點(diǎn)擊界面左上角的
+
號灭衷,選擇新建App
- 填寫應(yīng)用相關(guān)信息-
Metadata
(元數(shù)據(jù))
其中
SKU Number
是一個唯一標(biāo)識你的app的特殊字符串。應(yīng)用發(fā)布之后就不能修改旁涤,可以使用app的Bundle ID
翔曲。
之后的操作就不用介紹了,因?yàn)槎际且恍┗镜男畔⒃O(shè)置拭抬。你只需要按提示一步一步完成設(shè)置即可部默。添加成功之后,應(yīng)用的狀態(tài)會顯示Prepare for Upload
(準(zhǔn)備提交)造虎。
接下來傅蹂,在構(gòu)建版本
欄目下,我們看到蘋果提示我們使用Xcode或者Application Loader
提交我們的構(gòu)建版本算凿。此時我們就可以進(jìn)行上傳二進(jìn)制文件了份蝴。上傳之后在該欄目下就會有我們上傳的二進(jìn)制文件供選擇,選擇對應(yīng)的文件之后就可以點(diǎn)擊右上角的提交以供審核
按鈕氓轰,此時應(yīng)用的狀態(tài)會變成Waiting For Review
(等待審核)
上傳二進(jìn)制文件
蘋果提供兩種方式進(jìn)行提交婚夫,一種是直接通過Xcode打包提交,另一種是通過Xcode自帶工具Application Loader
進(jìn)行提交署鸡。我比較喜歡第二種案糙,因?yàn)榭梢钥吹缴蟼鬟M(jìn)度。更加人性化靴庆。關(guān)于上傳方式时捌,我這邊不做展開,提供給大家一個學(xué)習(xí)資料炉抒。有任何疑問歡迎留言提出??
方式一:使用 Xcode 上傳
我在iOS開發(fā)企業(yè)版ipa分發(fā)(In-House模式)記錄一文中有講到使用Xcode打包步驟奢讨,不過里面的少許步驟不一樣而已。這里就不做詳細(xì)說明焰薄。如果有什么不懂可以參閱??上傳你的App拿诸。
方式二:使用 Application Loader 上傳
有關(guān)詳細(xì)信息扒袖,請參閱??Using Application Loader。
知識擴(kuò)展
1亩码、我們在進(jìn)行版本更新的時候季率,App圖標(biāo)、名字蟀伸、描述蚀同、新版本描述、關(guān)鍵詞啊掏、支持URL蠢络、截圖、聯(lián)系方式迟蜜、Review Notes(審核備注)均可以更改
2刹孔、Review Notes(審核備注)中,包括如下信息:
- 名字娜睛、姓氏髓霞、電子郵件地址、電話號碼(都是必需)
在 app 審核團(tuán)隊(duì)有任何疑問或需要了解其他信息時應(yīng)聯(lián)系的您組織中人員的聯(lián)系人信息畦戒。
- 審核注釋(可選)
有助于審核團(tuán)隊(duì)實(shí)施審核過程的 app 其他信息方库。添加測試 app 可能需要的信息,如 app 專用設(shè)置障斋、測試注冊或帳戶詳細(xì)信息纵潦。“Review Notes”(審核備注)字段的大小上限為 4000 字節(jié)垃环,并可本地化為任何語言版本邀层。如果您的 app 通過蜂窩數(shù)據(jù)網(wǎng)絡(luò)傳輸流媒體視頻,則在“Review Notes”(審核備注)中輸入測試視頻流 URL遂庄。此文本僅對 Apple 審核團(tuán)隊(duì)可見寥院。
- 用戶名(可選)
擁有完整訪問權(quán)限的演示帳戶的用戶名。此帳戶在 app 審核過程中使用涛目,不能是過期帳戶秸谢。應(yīng)在“Review Notes”(審核備注)字段中添加其他帳戶的詳細(xì)信息。
- 密碼(可選)
擁有完整訪問權(quán)限的演示帳戶的密碼霹肝。
微博: @Danny_呂昌輝
博客: SuperDanny