App Store上傳更新報(bào)錯(cuò)的排除步驟
關(guān)于缺少文件、文件無(wú)效之類的錯(cuò)誤,看錯(cuò)誤日志可以很輕易的定位,所以本文就不再討論。本文主要介紹的是證書配置問(wèn)題的排查步驟。
最近需要上傳一個(gè)更新版本,總是上傳不成功。下面寫一下在碰到問(wèn)題時(shí)的排查步驟。
在碰到問(wèn)題時(shí)總是第一反應(yīng),“我沒(méi)做過(guò)啥啊”,這主觀思想導(dǎo)致了排查問(wèn)題更加困難。
上傳之后出現(xiàn)如圖錯(cuò)誤,”error itms-9000 the bundle at bundle path is not signed using an apple submission certificate”
由于最近某些原因,我將keychain給重置了一下,當(dāng)時(shí)申請(qǐng)的CertificateSigningRequest.certSigningRequest文件也已失效,再看錯(cuò)誤日志,我懷疑是證書的問(wèn)題。
隨后將所有的證書重新搞了一遍。問(wèn)題依然存在。
接著用繼續(xù)排查,用release證書打包出來(lái)一個(gè).app,舉例如AppName.app
然后用命令行來(lái)檢測(cè)證書
$codesign -vvvv AppName.app
AppName.app: CSSMERR_TP_NOT_TRUSTED
OK,終于找到了明確的錯(cuò)誤代碼了。google了一下發(fā)現(xiàn)是因?yàn)槿鄙倭?ldquo;Apple Woldwide Developer Relations Certification Authority”這個(gè)證書導(dǎo)致。
接著查看keychain,發(fā)現(xiàn)證書存在。只不過(guò)由于我之前折騰的時(shí)候把證書信任權(quán)限給改了,接著就出現(xiàn)了問(wèn)題。
將“使用此證書”改回“使用系統(tǒng)默認(rèn)”
再次編譯,檢測(cè)一下證書
$codesign -vvvv AppName.app
AppName.app: valid on disk
AppName.app: satisfies its Designated Requirement
OK,問(wèn)題解除