使用過期iOS開發(fā)者賬號(hào)打包

該文章屬于劉小壯原創(chuàng)麦乞,轉(zhuǎn)載請(qǐng)注明:劉小壯


配圖

這篇文章不是講開發(fā)者賬號(hào)過期蕴茴,怎樣進(jìn)行續(xù)費(fèi)的。而是講開發(fā)者賬號(hào)過期后姐直,怎樣繼續(xù)進(jìn)行打包測(cè)試倦淀,以及其中的原理的。

當(dāng)然声畏,在開發(fā)者賬號(hào)過期之前撞叽,就及時(shí)續(xù)費(fèi)這是最明智的選擇,如果開發(fā)者賬號(hào)沒有續(xù)費(fèi),可以看看下面的文章應(yīng)急能扒。


賬號(hào)過期

如果證書過期佣渴,在打包時(shí)還和之前的一樣,只要配置文件初斑、打包證書辛润、Bundle Identifier沒有錯(cuò)誤,就可以正常Archive见秤。

但是你對(duì)Archive之后的.xcarchive文件砂竖,使用打包證書進(jìn)行打包簽名的時(shí)候,按照之前的打包流程進(jìn)行打包鹃答,你會(huì)發(fā)現(xiàn)蘋果需要你添加一個(gè)Apple ID乎澄。

添加Apple ID

然后你到Accounts中發(fā)現(xiàn),我已經(jīng)添加了一個(gè)Apple ID了测摔,并且是對(duì)應(yīng)當(dāng)前證書的Apple ID置济。(如果沒有添加,則添加即可)

添加Apple ID

你發(fā)現(xiàn)添加Apple ID之后锋八,打包界面并沒有發(fā)生變化浙于,還是之前的樣子,就算刷新之后也沒有什么用挟纱。如果是這樣羞酗,那么遺憾的告訴你,請(qǐng)去開發(fā)者賬號(hào)看看是否過期了紊服。

然而進(jìn)去之后檀轨,你會(huì)發(fā)現(xiàn)蘋果已經(jīng)提醒你賬號(hào)過期了,這樣就不能正常打包了欺嗤。

過期

根據(jù)蘋果的官方描述参萄,如果賬號(hào)過期后App將不能下載,也無法更新和提交App剂府,以及失去修改配置證書拧揽、描述文件剃盾、以及開發(fā)者的身份腺占。但是已經(jīng)安裝App的用戶依然可以使用,我們也可以繼續(xù)訪問iTunes Connect和使用免費(fèi)開發(fā)資源痒谴。

如果是299$的企業(yè)賬號(hào)過期衰伯,已經(jīng)下載的App將不能使用,打開后會(huì)直接崩潰积蔚。還有一種教育賬號(hào)意鲸,這種賬號(hào)不會(huì)過期。

蘋果為了防止賬號(hào)過期的問題,在賬號(hào)過期前會(huì)給賬號(hào)的Agent用戶發(fā)送一封郵件怎顾,告知賬號(hào)快過期了读慎,需要續(xù)費(fèi)。而且提供了自動(dòng)續(xù)費(fèi)的功能槐雾,在賬號(hào)過期前30天自動(dòng)從銀行卡扣費(fèi)夭委,但是這個(gè)功能只在部分地區(qū)可用(然而并不包含中國(guó)大陸)。

賬號(hào)過期募强,怎么解決

賬號(hào)過期后株灸,你可以點(diǎn)擊上圖中的renew your membership,然后進(jìn)行續(xù)費(fèi)擎值。

續(xù)費(fèi)頁(yè)面

然而續(xù)費(fèi)之后并不一定能立即使用慌烧,而且現(xiàn)在著急打測(cè)試包。也或者公司是企業(yè)級(jí)(299美元)賬號(hào)鸠儿,不著急續(xù)費(fèi)屹蚊,只是想進(jìn)行發(fā)布測(cè)試〗浚可以通過以下方式解決這個(gè)問題淑翼。

  1. 直接在Xcode中選擇Window -> Orgenizer,找到我們Archives之后的包品追,操作如下:
    Archives -> Show in Finder -> 顯示包內(nèi)容 -> Products -> Applications

然后直接將這個(gè)包拖到iTunes中玄括,就可以生成一個(gè)ipa包,這個(gè)ipa包就是可以安裝的包肉瓦。

直接拖到應(yīng)用程序中

  1. 可以在Xcode中重新編譯當(dāng)前程序遭京,編譯完成后,在文件目錄中Show in Finder出這個(gè)包泞莉。
    我們可以直接將這個(gè)包壓縮哪雕,然后將壓縮包改zip后綴為ipa后綴即可。
打包
  1. Xcode中添加打包腳本為我們自動(dòng)打包鲫趁,在Build Phases中添加Run Script斯嚎,直接將腳本代碼添加進(jìn)去即可。
添加打包腳本

下面是本文中使用的腳本代碼挨厚,打包的腳本代碼網(wǎng)上一搜一大把堡僻,可以根據(jù)需求查找打包腳本。

/usr/bin/xcrun -sdk iphoneos PackageApplication -v "${RELEASE_BUILDDIR}/${APPLICATION_NAME}.app" -o "${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa" --sign "${DEVELOPER_NAME}" --embed "${PROVISONING_PROFILE}”

通過以上方式打的測(cè)試包疫剃,在開發(fā)者賬號(hào)過期的情況下钉疫,都可以正常安裝測(cè)試,可以對(duì)外發(fā)布測(cè)試巢价。

防患于未然

開發(fā)者賬號(hào)過期之前牲阁,及時(shí)續(xù)費(fèi)是必要的固阁,這可以從根本上解決問題,千萬別因?yàn)檫@點(diǎn)錢壞了大事城菊。

可以在賬號(hào)沒過期之前备燃,在Xcode中登陸過開發(fā)者賬號(hào)后,先將Provisioning Profiles文件導(dǎo)出到本地一份凌唬。

Exporting

在賬號(hào)過期之后赚爵,我們將Accounts中之前到賬號(hào)Apple IDs刪除。然后將Mac斷網(wǎng)法瑟,斷網(wǎng)之后將系統(tǒng)時(shí)間修改為過期之前的時(shí)間(盡量靠前一些)冀膝,然后雙擊Provisioning Profiles文件安裝即可,使用這種方式還能應(yīng)付一段時(shí)間霎挟。

賬號(hào)過期窝剖,為什么還能打

證書

首先我們要明確的就是什么是開發(fā)者證書。

先來說一些理論性的知識(shí)點(diǎn)酥夭,開發(fā)者證書是蘋果頒發(fā)給開發(fā)者赐纱,用來驗(yàn)證開發(fā)者身份的一個(gè)文件。這個(gè)文件類似于我們做加密時(shí)熬北,常用的數(shù)字證書一樣疙描。使用模擬器運(yùn)行時(shí)不需要證書,在真機(jī)測(cè)試或打包時(shí)讶隐,需要使用證書進(jìn)行簽名起胰。

證書中最重要的是其中包含的一個(gè)私鑰,證書的校驗(yàn)使用的是RSA非對(duì)稱加密算法巫延,這個(gè)私鑰就是和蘋果服務(wù)器進(jìn)行校驗(yàn)的一把鑰匙效五。如果證書中的私鑰不正確,則校驗(yàn)失敗炉峰,不能進(jìn)行相關(guān)的操作畏妖。

證書和私鑰

iOS中的私鑰一般都是2048位的,這個(gè)級(jí)別的私鑰長(zhǎng)度是非常安全的疼阔,目前為止破解最長(zhǎng)的私鑰只有RSA-768的長(zhǎng)度戒劫。

私鑰
導(dǎo)出私鑰

我們所說的導(dǎo)出私鑰也就是導(dǎo)出p12文件,導(dǎo)出證書后團(tuán)隊(duì)中其他人就可以使用這個(gè)證書婆廊,否則這個(gè)證書必須在生成證書助理文件的電腦上使用迅细。

導(dǎo)出私鑰
原因

我們分析一下為什么可以使用已過期賬號(hào)的證書。開發(fā)者賬號(hào)過期后否彩,如果證書的有效期沒有過期疯攒,蘋果并不會(huì)刪除證書的公私鑰,還會(huì)繼續(xù)提供校驗(yàn)服務(wù)列荔。

在證書生成后會(huì)有一個(gè)證書有效期敬尺,只要這個(gè)有效期內(nèi)使用證書就是有效的。如果證書過期后贴浙,我們只需要將過期的證書revoke之后生成新證書砂吞,之后都是用新證書即可。

證書有效期
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末崎溃,一起剝皮案震驚了整個(gè)濱河市蜻直,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌袁串,老刑警劉巖概而,帶你破解...
    沈念sama閱讀 211,423評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異囱修,居然都是意外死亡赎瑰,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,147評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門破镰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來餐曼,“玉大人,你說我怎么就攤上這事鲜漩≡雌” “怎么了?”我有些...
    開封第一講書人閱讀 157,019評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵孕似,是天一觀的道長(zhǎng)踩娘。 經(jīng)常有香客問我,道長(zhǎng)喉祭,這世上最難降的妖魔是什么霸饲? 我笑而不...
    開封第一講書人閱讀 56,443評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮臂拓,結(jié)果婚禮上厚脉,老公的妹妹穿的比我還像新娘。我一直安慰自己胶惰,他們只是感情好傻工,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,535評(píng)論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著孵滞,像睡著了一般中捆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上坊饶,一...
    開封第一講書人閱讀 49,798評(píng)論 1 290
  • 那天泄伪,我揣著相機(jī)與錄音,去河邊找鬼匿级。 笑死蟋滴,一個(gè)胖子當(dāng)著我的面吹牛染厅,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播津函,決...
    沈念sama閱讀 38,941評(píng)論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼肖粮,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了尔苦?” 一聲冷哼從身側(cè)響起涩馆,我...
    開封第一講書人閱讀 37,704評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎允坚,沒想到半個(gè)月后魂那,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,152評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡稠项,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,494評(píng)論 2 327
  • 正文 我和宋清朗相戀三年涯雅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片皿渗。...
    茶點(diǎn)故事閱讀 38,629評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡斩芭,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出乐疆,到底是詐尸還是另有隱情划乖,我是刑警寧澤,帶...
    沈念sama閱讀 34,295評(píng)論 4 329
  • 正文 年R本政府宣布挤土,位于F島的核電站琴庵,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏仰美。R本人自食惡果不足惜迷殿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,901評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望咖杂。 院中可真熱鬧庆寺,春花似錦、人聲如沸诉字。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)壤圃。三九已至陵霉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間伍绳,已是汗流浹背踊挠。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留冲杀,地道東北人效床。 一個(gè)月前我還...
    沈念sama閱讀 46,333評(píng)論 2 360
  • 正文 我出身青樓睹酌,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親扁凛。 傳聞我的和親對(duì)象是個(gè)殘疾皇子忍疾,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,499評(píng)論 2 348

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