來(lái)龍去脈
- 測(cè)試說(shuō)企業(yè)版打出來(lái)的包不能安裝到手機(jī)窟赏,用
iTools
安裝,包“驗(yàn)證失敗” - 用
XCode
試箱季,模擬器是沒有問(wèn)題的涯穷,可以正確編譯、安裝规哪、執(zhí)行求豫。用真機(jī)也不行了,報(bào)代碼簽名錯(cuò)誤诉稍,詳細(xì)信息是所選擇的手機(jī)不在信任列表里... ...
這是企業(yè)版賬號(hào)啊蝠嘉,跟手機(jī)有什么關(guān)系?這個(gè)企業(yè)版賬號(hào)跟普通的App Store
的賬號(hào)好像沒什么區(qū)別啊杯巨。 - 在運(yùn)維的幫助下蚤告,登錄蘋果開發(fā)者后臺(tái)賬戶,看到了兩個(gè)
Provisioning Profile
服爷,對(duì)應(yīng)于兩個(gè)證書杜恰,分別是Development
和Distribution
,確實(shí)和App Store
的賬號(hào)一模一樣仍源。 - 在跟運(yùn)維確認(rèn)了這是企業(yè)版賬號(hào)之后心褐,我決定找找原因看,這個(gè)有點(diǎn)顛覆自己對(duì)企業(yè)版的認(rèn)識(shí)笼踩,記得自己是在2013年左右玩過(guò)企業(yè)版的逗爹,看來(lái)蘋果又改什么東西了,知識(shí)需要更新了嚎于。
- 同事推薦了下面的第一篇參考文章掘而,我就照著做了。現(xiàn)在的賬號(hào)一律不動(dòng)于购,自己就新建一個(gè)賬號(hào)試試袍睡。
- 鑰匙串中生成一個(gè)
CertificateSigningRequest
,發(fā)給蘋果肋僧,生成一個(gè)新的證書斑胜。 - 下載生成的證書(
.cer
文件)到本地,并雙擊一下安裝到自己mac
的鑰匙串中嫌吠。這個(gè)步驟很重要止潘,不然的話XCode
中會(huì)顯示證書不對(duì)。當(dāng)時(shí)折騰了好幾次才知道這個(gè)小細(xì)節(jié)居兆。 - AppID已經(jīng)生成好了覆山,不用動(dòng)。設(shè)備ID雖然有這一欄泥栖,始終認(rèn)為企業(yè)版不需要管設(shè)備ID簇宽,一致沒動(dòng)勋篓。
- 接下來(lái)就是生成
Provisioning Profile
,這里唯一要注意的是類型要選擇In-House
魏割。生成后譬嚣,發(fā)現(xiàn)類型是Universal Distribution
。 - 采用這個(gè)新證書钞它,用
XCode
的Run
選項(xiàng)來(lái)裝拜银。結(jié)果是能裝上,但不能運(yùn)行和調(diào)試遭垛,一閃就退出了尼桶。手機(jī)上的程序可以點(diǎn)擊打開,功能正常锯仪。瞬間了解了泵督,這是發(fā)布版,是Release
模式庶喜,當(dāng)然不能用XCode
調(diào)試?yán)玻ìF(xiàn)象是閃退小腊,但是程序已經(jīng)正確安裝到手機(jī)上)久窟。這個(gè)和普通的release
是一個(gè)現(xiàn)象秩冈。 - 打包斥扛,導(dǎo)出
ipa
,再用iTools
安裝犹赖,一切正常了队他。
原因分析
- 經(jīng)歷過(guò)一次卷仑,終于明白峻村,企業(yè)版也分為開發(fā)模式和發(fā)布模式
- 開發(fā)模式也是
Development
锡凝,可以連XCode
調(diào)試,不過(guò)手機(jī)的UUID
也要添加窜锯。(這一點(diǎn)以前一直沒有認(rèn)識(shí)到张肾。一直認(rèn)為,企業(yè)版跟手機(jī)的UUID
應(yīng)該無(wú)關(guān)才對(duì)) - 企業(yè)版的發(fā)布模式應(yīng)該選
In-House
锚扎,最后的類型應(yīng)該是Universal Distribution
才對(duì)吞瞪。那個(gè)Distribution
的證書是沒有用的驾孔。 - 運(yùn)維按照普通賬號(hào)的操作方式來(lái)套用了芍秆,給了我們
Development
模式的Provisioning Profile
,手機(jī)的UUID
也沒有加妖啥,所以出現(xiàn)了測(cè)試同學(xué)無(wú)法安裝的問(wèn)題。
對(duì)應(yīng)措施
- 知道了原因蒿偎,改起來(lái)就快了,直接用新的
Universal Distribution
模式的Provisioning Profile
來(lái)簽名就可以隨便安裝了诉位。 - 企業(yè)版只是作為內(nèi)部的試用版發(fā)布,沒必要調(diào)試不从,所以
Development
模式暫時(shí)不準(zhǔn)備啟用犁跪。要添加手機(jī)的UUID
椿息,直接用普通版的就可以了坷衍,沒有必要上企業(yè)版。 - 自己
mac
上p12
要導(dǎo)出枫耳,讓運(yùn)維導(dǎo)到打包服務(wù)器的mac
上
參考文章
蘋果企業(yè)賬號(hào)發(fā)布APP詳解——通過(guò)自己網(wǎng)站分發(fā)應(yīng)用
這篇文章不錯(cuò),可以照著做钻心,是一個(gè)操作手冊(cè)
iOS App 簽名的原理
對(duì)蘋果的簽名機(jī)制研究得比較透徹铅协。值得好好看看