iOS 上架流程

iOS App 上架流程記錄


題記 ?這篇文章存了很久了惶洲,一直沒有發(fā)出去,今日剛好發(fā)出菱阵,后續(xù)還有其他內(nèi)容更新


最大的問題就是:Xcode 證書什么的他爸,Provisioning Profile 什么的,Debug 什么的策彤,Production 和Distribution 什么亂 78 糟的都把我搞糊涂了栓袖,網(wǎng)上很多教程都是好舊的(雖然思路一樣,但是不夠詳細)店诗,所以我打算把我今年已經(jīng)上架的干貨兒(下載地址,介紹地址)的上架艱辛歷程寫下來音榜,一是可以讓自己以后上架 app 時可以減少一點兒彎路庞瘸,二是可以給大家一個參考。

上架前預(yù)熱

先登陸自己的開發(fā)者賬號(自己提前注冊好 iOS 開發(fā)者賬號赠叼,這里假設(shè)你已經(jīng)擁有了一個 iOS 開發(fā)者賬號)擦囊,進入這個頁面:https://developer.apple.com/account/overview.action

由于我提交上架的是iOS Apps违霞,因此進入最左邊這一欄:


一開始,看著這幾個“Certificates瞬场、Identifiers买鸽、Devices、Provisioning Profiles”贯被,感覺沒什么的眼五,但是到實際用起來,特么的我就蒙圈了彤灶。下面解釋一下這幾個到底是什么鬼看幼,揭開它們的廬山真面目。

Certificates: 證書幌陕,常用的證書類型有4種:真機調(diào)試證書诵姜、推送調(diào)試證書,發(fā)布證書搏熄、推送生產(chǎn)證書棚唆。

Identifiers: App ID,跟項目工程的 Bundle Identifier(就是下圖紅箭頭指向的me.angelen.Ganker)匹配心例,如下圖所示:

需要支持推送宵凌、Game Center 等功能的 App ID 不能包含通配符* (下圖就是在新建App ID時,選擇App ID的后綴)契邀。

Devices: iOS設(shè)備在真機調(diào)試摆寄、AdHoc發(fā)布時都需要包含設(shè)備的UDID才可以安裝。

Provisioning Profiles: 配置文件(描述文件)坯门,不同類型的開發(fā)者賬號都包含 Development微饥、AdHoc 這兩種 Profile,不同的是個人古戴、公司開發(fā)者賬號有發(fā)布到 AppStore 的 Profile欠橘,而企業(yè)開發(fā)者賬號則是 InHouse 企業(yè)內(nèi)發(fā)布的 Profile。

看到我又亂了现恼,不怕肃续,慢慢來解釋。

開始上架之路

1. 申請App ID

選中Identifiers的App IDs叉袍,點擊右上角的“+”號填寫相應(yīng)信息來申請App ID始锚。

注意:這個App ID Description的Name是用來描述你的App Id,這個隨便填喳逛,沒有什么限制瞧捌,最好是項目名稱,這樣方便自己辨識(不允許中文喔)。

注意:App ID Suffix姐呐,這是你 App Id 的后綴殿怜,這個需要仔細。因為這個內(nèi)容和你的程序直接相關(guān)曙砂,后面很多地方要用到头谜,最好是com.yourcompany.yourappname的格式,我用的是項目中的 Bundle Identifier(反正這樣是最保險的鸠澈,上面有提到什么是 Bundle Identifier )柱告。

注意:App Services,默認會選擇2項款侵,不能修改末荐,只需要選擇上自己需要的服務(wù)即可,不知道在哪里看到說是必須要選上推送新锈,否則后面就沒有辦法修改了甲脏,但是我自己測試的是可以修改的。

如果不放心的程序員妹笆,可以選上喔块请,然后點擊Continue。

確認沒有錯的話直接點擊 Submit 后點擊 Done 即完成 App ID 的創(chuàng)建拳缠,如下圖所示:

2. 創(chuàng)建證書(Certificates)

2.1 創(chuàng)建證書請求文件

先創(chuàng)建一個證書請求文件墩新。在 Mac 上的應(yīng)用程序找到“鑰匙串訪問”,如下圖這個圖標:

打開后窟坐,選擇 鑰匙串訪問–證書助理–從證書頒發(fā)機構(gòu)請求證書海渊,如下圖所示:

填寫好證書信息,保存該證書哲鸳。

注意:用戶郵件地址填寫開發(fā)者的郵件臣疑,常用名稱是證書中密鑰的名字,CA 電子郵件地址不用填徙菠。

點擊“繼續(xù)”讯沈,選擇存儲該證書的位置,即可生成證書請求文件婿奔,如下圖所示:

2.2 開始創(chuàng)建證書

證書有兩大類缺狠,開發(fā)證書(Development,也稱為調(diào)試證書)和發(fā)布證書(Production)萍摊。

常用的有以下幾種:

① iOS App Development:真機調(diào)試證書挤茄。

② Apple Push Notification service SSL (Sandbox):推送調(diào)試證書,直接用 Xcode 調(diào)試到設(shè)備的 App 需要調(diào)試證書推送通知冰木。

③ App Store and Ad Hoc:發(fā)布證書驮樊,App Store、In-House(之前是有這個的片酝,不過我現(xiàn)在看不到囚衔,先不管)、Ad Hoc 發(fā)布方式都需要這個證書來簽名雕沿。

④ Apple Push Notification service SSL (Sandbox & Production):推送正式證書练湿,AppStore、In-House审轮、AdHoc 都需要用正式推送證書推送通知肥哎。

注意:這幾種證書的創(chuàng)建都是需要上傳CSR文件(就是剛剛創(chuàng)建好的 CertificateSigningRequest.certSigningRequest文件)。

發(fā)布證書和開發(fā)者證書需要操作兩次疾渣,分別創(chuàng)建篡诽,開發(fā)者證書用于真機調(diào)試,發(fā)布證書用于提交到 App Store榴捡。

比如先勾選 iOS App Development杈女,點擊 Continue,它會提示你需要一個 CSR 文件吊圾。

機智如我早就已經(jīng)創(chuàng)建好了达椰,就是那個上面說的 CertificateSigningRequest.certSigningRequest文件。

好项乒,繼續(xù) Continue啰劲。

選擇那個 CSR 文件,點擊 Generate檀何。

可以把他下載到 Mac 找個地方放著蝇裤。

同樣的,App Store and Ad Hoc 也是一樣的方法來創(chuàng)建即可频鉴。

哎呀栓辜,還可以,知道我已經(jīng)創(chuàng)建了 iOS App Development砚殿,給我變灰不可以點擊了啃憎。

到了最后一步,跟創(chuàng)建 iOS App Development 差不多:

不過跟 iOS App Development 的證書的Name有點不同似炎。一個是 iOS Development: Microlen Yan(我的)辛萍,另一個是 iOS Distribution: Y..S.. Technology Co., Ltd.(公司的)。也下載到電腦以后羡藐,你 Mac 上有了以下這兩個文件:

在開發(fā)者中心也可以看到:

這兩個證書都是有效期1年贩毕。

雙擊這兩個 cer 證書文件,就可以安裝好了這兩個證書仆嗦。(如果安裝不上辉阶,可以直接將證書文件拖拽到鑰匙串訪問的列表中)

安裝完成之后應(yīng)該是這樣子的:

3. 創(chuàng)建配置文件(描述文件Provisioning Profile)

點擊右上角的“+”號,分別創(chuàng)建開發(fā)用的 Provisioning Profile 和發(fā)布到 App Store 用的 Provisioning Profile:

以iOS App Development為例。

選擇之前已經(jīng)創(chuàng)建好的App ID谆甜,下一步:

選擇證書垃僚,這個也是剛剛創(chuàng)建好的證書。繼續(xù)下一步:

注意:開發(fā)的 Provisioning Profile 需要真機調(diào)試规辱,所以這里要綁定一個或以上的真機谆棺,這里我是之前添加過真機了,所以可以直接勾選罕袋;如果沒有的話改淑,需要將真機的 UUID 復(fù)制出來在此添加(方法:使用手機 Safari 訪問http://fir.im/udid )。還有就是浴讯,在發(fā)布的 Provisioning Profile 中朵夏,是沒有這一步的,道理我們都懂S芘Α(不懂也不要問度娘)

好仰猖,勾選了之后,直接 Continue:

填寫好了 Profile Name 之后掠河,點擊 Generate 生成:

下載下來吧亮元,騷年!然后去創(chuàng)建發(fā)布用的 Provisioning Profile唠摹,步驟和以上的差不多爆捞。

在選擇證書的時候有一點點不同:

同樣完成以后,下載下來」蠢現(xiàn)在就多了兩個 Provisioning Profile:

雙擊就添加到 Xcode 中煮甥,這樣在真機調(diào)試或者發(fā)布時,就可以分別有不同的 Provisioning Profile 與其對應(yīng)藕赞。不過成肘,其實可以不用下載保存,因為可以在Xcode那里下載的(具體操作下面有斧蜕,我也是后來才聽說的双霍,原諒我沒有好好讀書)。

4. 項目配置(在 Xcode 進行)

在 Xcode 中批销,選擇 Xcode–Preference 以下界面洒闸,選擇 Accounts 選項卡:

選中那個 Admin 的,然后點擊 View Details…

在這里可以下載你的 Provisioning Profile(Xcode做得還可以的是不是)均芽。

配置以下項目 PROJECT 的 Provisioning Profile 屬性:

然后用真機打包:Product–Archive(如果不是連真機丘逸,好像 Archive 這個菜單項是灰色不可以點擊的)

為了保險起見、讓蘋果審核順利一點掀宋,先點擊“Validate…”來驗證一下:

驗證驗證著就出現(xiàn)以下這個問題了:

看來是這個 iTunes Connect 的問題深纲,那就先去 iTunes Connect 去注冊一個該 app 的信息吧仲锄。

https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa/ra/ng/

我試了好多次才進去的,apple 這個坑爹貨湃鹊。點擊“我的 App”儒喊,新建一個 App 吧。

點擊創(chuàng)建之后

填寫完相應(yīng)信息涛舍,點擊“1.0 準備提交”澄惊。

把要填的信息包括:版本信息、App 綜合信息富雅、Game Center(我的暫時沒有用到)、App 審核信息肛搬、額外信息没佑,填寫完畢之后存儲一下(建議每填一下存儲一下,iTunes Connect 經(jīng)常網(wǎng)絡(luò)搞飛機的)温赔。

對了蛤奢,還有一個“構(gòu)建版本”,這個把代碼打包成 ipa 文件而已陶贼。構(gòu)建版本(下面有構(gòu)建方法)完成之后啤贩,再來這個 iTunes Connect 里填寫“構(gòu)建版本”

構(gòu)建版本的方法有兩種,一種是使用 Xcode拜秧,另一種就是下載一個叫 Application Loader 這個軟件:

Xcode 構(gòu)建版本:

用真機打包:Product–Archive 之后進入以下頁面(或者已經(jīng) Archive 了的話就可以通過 Window–Organizer 進入):

看到藍色背景的按鈕沒有痹屹,Upload to App Store…之后按照提示操作吧。

我建議使用 Application Loader 的枉氮。

Application Loader 構(gòu)建版本:

如上圖志衍,點擊“Export…”,導(dǎo)出一個 ipa 文件(其實這個時候就可以點擊“Validate…”聊替,但是我懶)楼肪。

然后打開 Application Loader 這個軟件,雙擊“交付您的應(yīng)用程序”:

它會驗證你的 app惹悄,如果這里上傳完畢沒有報錯的話春叫,那么 10 分鐘左右等 apple 那邊處理完這個版本,就可以到 iTunes Connect 里的“構(gòu)建版本”選擇剛剛上傳好的這個版本泣港。

填好就像這樣子啦:

好暂殖,信息都填寫完畢了。iTunes Connect 右上角提交審核吧爷速!祝君 app 順利上架央星!

推薦拓展閱讀

著作權(quán)歸作者所有

如果覺得我的文章對您有用,請隨意打賞惫东。您的支持將鼓勵我繼續(xù)創(chuàng)作莉给!

¥ 打賞支持

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末毙石,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子颓遏,更是在濱河造成了極大的恐慌徐矩,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,744評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叁幢,死亡現(xiàn)場離奇詭異滤灯,居然都是意外死亡,警方通過查閱死者的電腦和手機曼玩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評論 3 392
  • 文/潘曉璐 我一進店門鳞骤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人黍判,你說我怎么就攤上這事豫尽。” “怎么了顷帖?”我有些...
    開封第一講書人閱讀 163,105評論 0 353
  • 文/不壞的土叔 我叫張陵美旧,是天一觀的道長。 經(jīng)常有香客問我贬墩,道長榴嗅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,242評論 1 292
  • 正文 為了忘掉前任陶舞,我火速辦了婚禮嗽测,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘吊说。我一直安慰自己论咏,他們只是感情好,可當我...
    茶點故事閱讀 67,269評論 6 389
  • 文/花漫 我一把揭開白布颁井。 她就那樣靜靜地躺著厅贪,像睡著了一般。 火紅的嫁衣襯著肌膚如雪雅宾。 梳的紋絲不亂的頭發(fā)上养涮,一...
    開封第一講書人閱讀 51,215評論 1 299
  • 那天,我揣著相機與錄音眉抬,去河邊找鬼贯吓。 笑死,一個胖子當著我的面吹牛蜀变,可吹牛的內(nèi)容都是我干的悄谐。 我是一名探鬼主播,決...
    沈念sama閱讀 40,096評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼库北,長吁一口氣:“原來是場噩夢啊……” “哼爬舰!你這毒婦竟也來了们陆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,939評論 0 274
  • 序言:老撾萬榮一對情侶失蹤情屹,失蹤者是張志新(化名)和其女友劉穎坪仇,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體垃你,經(jīng)...
    沈念sama閱讀 45,354評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡椅文,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,573評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了惜颇。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片皆刺。...
    茶點故事閱讀 39,745評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖官还,靈堂內(nèi)的尸體忽然破棺而出芹橡,到底是詐尸還是另有隱情,我是刑警寧澤望伦,帶...
    沈念sama閱讀 35,448評論 5 344
  • 正文 年R本政府宣布煎殷,位于F島的核電站,受9級特大地震影響豪直,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜弓乙,卻給世界環(huán)境...
    茶點故事閱讀 41,048評論 3 327
  • 文/蒙蒙 一末融、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧暇韧,春花似錦、人聲如沸懈玻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽艺栈。三九已至,卻和暖如春湾盒,著一層夾襖步出監(jiān)牢的瞬間湿右,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評論 1 269
  • 我被黑心中介騙來泰國打工毅人, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人堰塌。 一個月前我還...
    沈念sama閱讀 47,776評論 2 369
  • 正文 我出身青樓,卻偏偏與公主長得像般此,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子铐懊,可洞房花燭夜當晚...
    茶點故事閱讀 44,652評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 引言 關(guān)于開發(fā)證書配置(Certificates & Identifiers & Provisioning Pro...
    Damen_9527閱讀 9,368評論 0 4
  • 上架步驟 一瞎疼、創(chuàng)建創(chuàng)建App ID 二、創(chuàng)建證書請求文件 (CSR文件) 三贼急、創(chuàng)建發(fā)布證書 (CER) 四、創(chuàng)建P...
    YANG1220閱讀 980評論 0 12
  • 轉(zhuǎn)自>曾夢想仗劍走天涯 引言 關(guān)于開發(fā)證書配置(Certificates & Identifiers & ...
    MindTheGap閱讀 3,119評論 0 8
  • 我們需要有一個付費的蘋果開發(fā)者賬號空闲,個人($99/年),企業(yè)($299/年)走敌。登陸蘋果賬號。點擊進入 Certif...
    牛程程閱讀 553評論 0 0
  • 一個女孩坐在我右手邊 隔著一個座位掉丽,一個人 可伸縮的扶手前端 收納口放著一桶爆米花 她吃得津津有味 我想如果她和我...
    文森林木閱讀 117評論 0 0