“尊貴”的年費會員
和其他老爺家的年費會員一樣姥闪,交了蘋果開發(fā)者計劃的年費,也會相應(yīng)的擁有年費會員“尊享”的各種權(quán)限和服務(wù)砌烁,當(dāng)你的賬號激活后筐喳,再進(jìn)入你的開發(fā)者賬號,就會變成下面的樣子。
左邊欄上半部分是會員獨享的避归,普通賬號是看不到這些選項卡的荣月,對比可見上一篇,下半部分是通用的槐脏,這里就不說了喉童。Overview是一個概覽,展示你賬號狀態(tài)和一些當(dāng)前賬號身份常用的模塊推薦顿天,Membership就是當(dāng)前賬號的詳細(xì)信息一覽堂氯,第三第四個是主要要講的模塊,也出現(xiàn)在了概覽里牌废,后面詳述咽白。
CloudKit Dashboard是CloundKit相關(guān)的設(shè)置管理中心,啥是CloundKit鸟缕?這是iOS8以后蘋果推出的基于iCloud的一個云端數(shù)據(jù)存儲服務(wù)晶框,提供了低成本的云存儲并能作為一個后端服務(wù)通過用戶們的iCloud賬號分享其應(yīng)用數(shù)據(jù)。換句話說懂从,如果只是做iOS獨占應(yīng)用授段,又不想或者不會自己弄后臺保存用戶數(shù)據(jù),那CloudKit就是非常適合你的一個后端解決方案番甩。當(dāng)然目前我還沒用過這個侵贵,所以不能瞎說哈,以后有深入研究可能再來分享一下缘薛,現(xiàn)在先貼幾篇相關(guān)的文章窍育,感興趣的可以看看。
- iOS 8 CloudKit上手教程
- iOS云存儲:CloudKit 基本使用教程(不懂后臺開發(fā)的小伙伴有福了)
- 你應(yīng)當(dāng)留意的CloudKit
- CloudKit - 免費強大的云服務(wù)
最后一個是蘋果的技術(shù)支持宴胧,作為一名交了年費的“上帝”漱抓,當(dāng)然會享受一些“特殊”服務(wù),看它介紹大意應(yīng)該是如果你的App有什么“頭疼腦熱”恕齐,讓你感覺沒得救了乞娄,你可以來找蘋果粑粑,蘋果工程師可以從代碼層面對你的App提供技術(shù)支持显歧,不過只有兩次技術(shù)支持事件的機會仪或?如果我沒理解錯的話。不過應(yīng)該很少有人用到這個吧追迟,以后萬一用到了再來補充吧。
同志骚腥,請出示一下你的證件
和身份證敦间,通行證一樣,你如果想自由暢快的真機測試或者發(fā)布應(yīng)用,也是需要相應(yīng)的證書和許可的廓块,接下來我們詳細(xì)來講講厢绝。
點擊左邊欄第三個的Certificates, ID & Profiles,會跳轉(zhuǎn)到下面這個管理相關(guān)配置文件的頁面带猴。
這些東西都是做什么用的呢昔汉?我們一個個來看看。
Certificates(證書)
Certificates 就是“證書”咯拴清,它可以看做是你的戶口靶病,是證明你開發(fā)者身份的證件,也是你開發(fā)和發(fā)布的門鑰匙口予,是最基本的根證書娄周,所以第一步自然是要乖乖領(lǐng)證。點擊Certificate下的All可以看到當(dāng)前已經(jīng)申請成功的所有證書列表信息沪停,點擊右上角+號則可以申請新證書煤辨。
點擊后從下圖可以看出,證書是分為兩個大類的木张,一類是Develoment众辨,也就是開發(fā)相關(guān)的證書,另一類則是Production舷礼,即產(chǎn)品相關(guān)的證書鹃彻。需要注意的是單個付費賬號申請其中的開發(fā)和發(fā)布證書的數(shù)量是有限的,普通個人開發(fā)賬號最多可注冊 iOS Development/Distribution 證書各2個且轨,其實一般各只需要一個就夠了浮声。
開發(fā)證書 ( Development Certificates )
顧名思義這是開發(fā)階段需要使用到的證書。有人會問了旋奢,我建新工程敲代碼也沒見問我要證呀泳挥?敲代碼當(dāng)然不要,但你如果想要把你創(chuàng)建的App自由的在你的設(shè)備上安裝至朗,這個證書就是必不可少的屉符,有了它,才能授權(quán)你的設(shè)備安裝運行對應(yīng)許可的App锹引。
開發(fā)類證書包含兩種矗钟,開發(fā)證書和推送證書。前者主要用于真機測試和相關(guān)開發(fā)的許可嫌变,是我們必須用到的吨艇,而后者是蘋果推送服務(wù)的證書,如果你的App有推送功能腾啥,應(yīng)該也申請一份這個證書东涡,感興趣的可以看看這篇博文(蘋果信息推送服務(wù)(Apple Push Notification Service)使用總結(jié))冯吓。這里我們選擇第一個iOS App Development,然后滾動到最底端點擊藍(lán)色按鈕continue進(jìn)行下一步疮跑。
進(jìn)入下一步后组贺,我們會看到提示要求我們提供一個 Certificate Signing Request (CSR)文件,這個證書簽名請求文件從哪來呢祖娘?
首先我們得訪問我們mac電腦上的鑰匙串失尖,一般可以點擊桌面,從頂部工具欄選擇前往-實用工具中找到鑰匙串(請無視我的“屁股”桌面渐苏,麥爹:午時已到~)掀潮,也可以在Launchpad中的其他文件夾里找到它。
單擊圖標(biāo)打開整以,會彈出鑰匙串訪問的窗口胧辽,這里可以看到你目前電腦中安裝的各個證書的狀態(tài),如果出現(xiàn)過期和失效的公黑,應(yīng)及時更新替換或刪除邑商。
這里面的詳細(xì)道道我們暫且不管,在保證鑰匙串訪問窗口在當(dāng)前時凡蚜,我們來看到頂部工具欄人断,選擇鑰匙串訪問-證書助理-從證書頒發(fā)機構(gòu)請求證書這一項。
這時會彈出一個窗口如下圖朝蜘,用戶電子郵件地址就填你的開發(fā)者賬戶的郵箱恶迈,常用名稱填你的名字或者你們團(tuán)隊的代號都行,如果你要把文件發(fā)送到電子郵箱谱醇,就選第一個并填上接收文件的郵件地址暇仲,我們在這里選第二個存儲到磁盤。
填完必要信息后點繼續(xù)副渴,你的桌面上就會生成這么一個文件奈附,就是我們申請證書所需要的CSR文件。這個文件保管好煮剧,以后各個證書的申請都會需要用到斥滤,最后找個云盤存好。
讓我們回到網(wǎng)頁端勉盅,在剛才的頁面點擊藍(lán)色按鈕continue后佑颇,在如下圖的頁面,點擊Choose File...草娜,找到你剛剛生成的CSR文件并上傳后挑胸,點擊藍(lán)色按鈕Continue進(jìn)入下一步。
看到如下圖的頁面宰闰,你的開發(fā)證書就申請成功了茬贵,此時點擊Download下載后雙擊即可安裝證書凸克,然后到剛剛的鑰匙串訪問中可以看到你的新證書狀態(tài)。至此即完成了最基本的開發(fā)證書的申請流程闷沥,是不是挺簡單的?不過這才是萬里長征第一步咐容,我們繼續(xù)往下看舆逃。
稍等一下,那我要是申請錯了或者不想要了戳粒,想刪除這個證書要怎么做呢路狮?也很簡單∥翟迹回到證書列表奄妨,點擊展開你需要刪除的證書,核對信息無誤后點選Revoke即可苹祟,這里點擊Download也可以重新下載該證書砸抛。
另外剛剛說到的CSR文件,究竟是用來做什么的呢树枫?知其然直焙,還得知其所以然,我們在剛才選擇CSR文件上傳的那個頁面可以看到解釋砂轻。
簡單點說奔誓,生成CSR文件的這個過程,實際上是自動生成了一對公鑰和私鑰搔涝,并保存在了你的Mac的鑰匙串中厨喂。Xcode的Code Signing(代碼簽名)正是使用這種基于非對稱密鑰的加密方式,用私鑰進(jìn)行簽名庄呈,用公鑰進(jìn)行驗證蜕煌。我們可以看看蘋果官方的文檔Creating Your Team Provisioning Profile,如下圖所示抒痒,在我們自己的Mac的鑰匙串登錄項中的密鑰項里存儲著相關(guān)的公鑰和私鑰幌绍,而申請的證書中只包含了公鑰。
這也就是說你只能用相關(guān)的私鑰來進(jìn)行簽名故响,所以如果沒有了私鑰傀广,證書也就沒有意義。當(dāng)用自己的私鑰對代碼簽名后彩届,蘋果就可以用證書中的公鑰來進(jìn)行驗證伪冰,確保是本人對代碼進(jìn)行了簽名,而不是被冒充樟蠕,從而確保代碼的完整性贮聂。因此在申請完證書時靠柑,最好導(dǎo)出并保存好你的私鑰。當(dāng)你的團(tuán)隊有新成員或其他設(shè)備需要共享證書時吓懈,用同一私鑰就可以歼冰。
那么問題又來了,我要怎么和團(tuán)隊的其他成員共享證書耻警,用同一私鑰呢隔嫡?打開你的鑰匙串訪問,選中你需要共享的證書甘穿,右鍵點擊彈出菜單腮恩,選擇導(dǎo)出某某證書。
這時會有下面這個彈窗彈出温兼,填上相關(guān)信息后點存儲秸滴。
接下來還會彈出設(shè)置文件密碼(不填就是不設(shè)置密碼)的彈窗和驗證密鑰登錄密碼的彈窗,依次輸入后點允許即可在相應(yīng)位置生成一個.p12文件呢募判。將這個文件共享給團(tuán)隊成員荡含,雙擊安裝后即可。關(guān)于p12文件可以看看這篇博文(一個蘋果證書怎么多次使用——導(dǎo)出p12文件)届垫。
不過其他人僅有證書還不足以順利的進(jìn)行真機測試和相關(guān)開發(fā)内颗,還需要另一個文件,這個我們后面再講敦腔。
開發(fā)證書到這就講完了均澳,至于推送證書的申請,還需要先綁定App ID符衔,這里也不做介紹找前,有需要的可以自行研究。
產(chǎn)品證書 (Production Certificates )
說完了開發(fā)類的證書判族,咱么在看看產(chǎn)品類的證書躺盛。乍一看種類還挺多。
第一個App Store and Ad Hoc形帮,就是我們常說的發(fā)布證書(Distribution Certificate)槽惫。這個證書有兩個作用,一是授權(quán)我們向AppStore提交并發(fā)布應(yīng)用辩撑,是上架我們作品必備的通行證界斜。申請流程和之前開發(fā)證書一毛一樣,這里就不多說了合冀。發(fā)布證書只需要發(fā)布人員的Mac上安裝就行各薇,不需要共享給團(tuán)隊成員。二則是發(fā)布測試應(yīng)用的君躺,相關(guān)可以參考這篇文章(制作iOS Ad-Hoc測試應(yīng)用)峭判,這里也不多費篇幅了开缎。
后面這些看名字大概也能知道是做什么的,我也沒用過林螃,不敢在這瞎BB誤人子弟奕删,有需要用到的可以自行研究,申請證書的過程也不會很麻煩疗认。
Identifiers(標(biāo)識符)
天了嚕急侥,講個證書講了這么長篇幅,我也是夠啰嗦的侮邀,下面的都快點講了。我們看看第二個Identifiers贝润,也就是標(biāo)識符滓彰,或者通俗點說就是身份證症杏,護(hù)照。你的App要是沒有這玩意兒,就是個黑戶欠窒,想上線AppStore那是萬萬不可能滴。下面那些我就不講了滤否,我也沒用過吃嘿,只說App IDs,這就是給你心愛的App兒子辦理身份證的派出所所在地横朋。老規(guī)矩仑乌,點擊右上角的加號進(jìn)行申請。
要填的信息不少琴锭,我們來看看晰甚。App ID Description下面就是填下你的App的名字,這里該填啥填啥决帖,不影響你上架后App的名字顯示厕九,所以最好填明確一點,且不要重復(fù)地回,不然回頭ID多了你都搞不清哪個是哪個扁远,但一定不要有特殊符號。在下圖App ID Suffix里刻像,是設(shè)置里的App ID后綴類型的畅买,第一種是Explicit App ID是指唯一的App ID,這種App ID用于唯一標(biāo)識一個應(yīng)用程序细睡,例如com.GordonHaha.BoomShaKaLaKa皮获,標(biāo)識Bundle ID為com.GordonHaha.BoomShaKaLaKa的程序。
而Wildcard App ID則是通配符App ID纹冤,用于標(biāo)識一組應(yīng)用程序洒宝。例如可以表示所有應(yīng)用程序购公,則com.GordonHaha.可以表示以com.GordonHaha開頭的所有應(yīng)用程序。這里看你需求選擇雁歌,一般單獨的App選第一個就好宏浩。在下面的Bundle ID欄里填上你App相應(yīng)Bundle ID即可。記住靠瞎,Bundle ID必須是沒有注冊過的比庄,如果有人申請注冊過這個ID了,就老老實實換一個吧乏盐。這就跟你注冊網(wǎng)游ID一樣佳窑,先到先得,所以說取個特別點的名真難呀父能。
什么什么神凑?Bundle ID在哪里看?如圖位置何吝。溉委。。
填完這個往下看最后一項App Services爱榕,這里是選擇你的App需要的服務(wù)的瓣喊,包括Apple Pay等等,當(dāng)然這些服務(wù)中有一些是需要相應(yīng)證書許可的黔酥,有需要的就請自行研究吧藻三,這里不多說了。我們這里就默認(rèn)的就行了跪者。完成后點continue進(jìn)入下一步趴酣,會讓你核對下剛剛的信息,無誤后點擊藍(lán)色按鈕Register即可完成App ID的注冊坑夯,這樣你心愛的App兒子就終于有了身份證岖寞,再也不是黑戶了。
那我要是填錯了怎么辦柜蜈?還能改嗎仗谆?當(dāng)然可以。在App ID的列表里找到你需要修改的App ID淑履,點擊展開隶垮,在展開信息欄下方有Edit按鈕,點擊即可修改秘噪。修改頁面下也可以直接刪除該App ID狸吞,流程都比較簡單,這里不再詳述。
Devices(設(shè)備)
這個第三項Devices蹋偏,很明顯就是添加設(shè)備的地方啦便斥。我們想要自由暢快的真機測試,就需要把你的測試機在這里注冊威始。測試機類型有很多枢纠,我們這只講iPhone的,其他的請自行研究嘍黎棠。還是老規(guī)矩晋渺,先點右上角的加號添加新設(shè)備。
我們看到Register Device脓斩,注冊你的設(shè)備木西。這里需要填你的設(shè)備名字和UDID,設(shè)備名填一個你覺得好認(rèn)的就行随静,比如某某的iPhone6s之類八千。那什么是UDID呢,百度百科上說挪挤,UDID指的是設(shè)備的唯一設(shè)備識別符,移動廣告商和游戲網(wǎng)絡(luò)運營商往往需要通過UDID用來識別玩家用戶关翎,并對用戶活動進(jìn)行跟蹤扛门。也就是你手機的身份證啦。那我要在哪看呢纵寝?用數(shù)據(jù)線連接你的iPhone或iPad到你的電腦上论寨,然后打開電腦上的iTunes,點擊下圖紅框中的圖標(biāo)進(jìn)入設(shè)備詳情頁爽茴。
來到了設(shè)備詳情頁葬凳,我們設(shè)備的基本信息都展示在了這里∈易啵可沒有看到你說的UDID呀火焰,難道是序列號?
當(dāng)然不是啦胧沫,這里需要點擊下序列號來切換信息顯示昌简,直到顯示出UDID為止,然后復(fù)制即可绒怨。
回到網(wǎng)頁端纯赎,填好相關(guān)信息后,我們看到下面還有個Register Multiple Devices南蹂,這是批量添加設(shè)備的地方犬金,要記住每個賬戶中的設(shè)備數(shù)量限制是100個。Disable 一臺設(shè)備也不會增加名額,只能過了一年之后才能刪除晚顷,所以如果機器比較多慎用峰伙。
信息填完后點擊continue即完成設(shè)備的添加,在相應(yīng)的設(shè)備列表里可以查看添加的設(shè)備信息音同。
Provisioning Profiles(描述文件)
最后一個是描述文件词爬,這是個獨特的東西,它將之前講的證書权均,App ID和設(shè)備打包為一體顿膨,這樣就方便了我們的調(diào)試和發(fā)布。將其放入我們的Xcode中叽赊,讓Xcode知道我們的證書和哪些設(shè)備之類的信息相匹配恋沃,從而允許文件中綁定的設(shè)備安裝相應(yīng)的App進(jìn)行開發(fā)測試。
我們來看看怎么創(chuàng)建這個描述文件必指,依舊是點選Provisioning Profiles欄下的All囊咏,再點右上角的加號。
顯然塔橡,描述文件也分開發(fā)和發(fā)布兩類梅割,創(chuàng)建的流程其實都是一樣的,這里我們選第一個iOS App Development葛家,然后continue進(jìn)入下一步户辞。然后會需要你選擇一個之前注冊號的App ID,選好后continue下一步癞谒。
接下來是選擇你之前創(chuàng)建的證書底燎,可以多選,選擇相應(yīng)App的開發(fā)證書即可弹砚。然后continue下一步双仍。
然后是選擇可以進(jìn)行真機測試的設(shè)備,這里會提供你之前添加過的那些設(shè)備桌吃,選擇需要的即可朱沃,繼續(xù)continue下一步。
最后會讓你填上描述文件的名字茅诱,下面可以看到文件的類型为流,包含的證書數(shù)量和設(shè)備數(shù)量。填寫完畢后點continue即可完成文件的創(chuàng)建让簿,和之前的證書一樣下載下來雙擊即可完成安裝敬察。其他的描述文件創(chuàng)建過程基本一樣,就不再贅述了尔当。
這樣莲祸,只要將你開發(fā)同伴的設(shè)備添加進(jìn)去后蹂安,再將之前的p12文件和對應(yīng)的開發(fā)描述文件一起發(fā)給你的團(tuán)隊成員,即可共享證書和真機測試的許可锐帜。
關(guān)于真機測試
真機測試是很重要的開發(fā)步驟田盈,模擬器畢竟不是真機,處理架構(gòu)都不一樣缴阎,很多模擬器上運行似乎沒問題允瞧,到了真機上就出Bug,也可能模擬器上運行不了蛮拔,真機上又毫無問題述暂。實際開發(fā)中,還是當(dāng)以真機為準(zhǔn)建炫,畢竟我們的App是要裝到用戶的設(shè)備上的畦韭,模擬器上跑得再6也沒用,真機上運行流暢無誤才是最基本的準(zhǔn)則肛跌。前面也說了真機測試的注冊流程艺配,那對于沒有付費賬號的廣大開發(fā)者來說,想要將自己的好不容易開發(fā)出的寶貝兒App兒子裝在自己的手機上該怎么辦呢衍慎?
為了擴大iOS的影響力转唉,鼓勵iOS開發(fā)者,去年推出的Xcode7增加了免證書真機測試的功能稳捆,對于廣大iOS開發(fā)者來說是一個不小的福利赠法。具體的流程我這里不多說了,網(wǎng)上有很多教程眷柔,這里貼幾篇期虾。
像我們從github原朝,cocoachina等地方下了一些Demo想真機測試一下時驯嘱,常會發(fā)現(xiàn)因為證書對不上而無法實現(xiàn),這時候就可以改下工程的Bundle ID喳坠,通過上面的免證書真機測試流程重新生成臨時證書即可鞠评,不過對于一些有綁定Bundle ID的第三方SDK,這樣做很可能會導(dǎo)致程序無法運行或者其他異常狀況壕鹉,所以也得看情況使用剃幌。
今天啰里啰嗦的把證書相關(guān)的基本過了一遍,也算萬事俱備晾浴,只欠最后的提交了负乡。當(dāng)然你也許會說還得要開發(fā)一個App呀,不然提交啥脊凰?
那我只能表示
(圖片打碼好辛苦抖棘,感覺身體被掏空~)