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)作莉给!
¥ 打賞支持