iOS真機(jī)運(yùn)行時(shí)出錯(cuò)(0xE8008018)受難記

從今年三月開(kāi)始,我學(xué)習(xí) iOS 開(kāi)發(fā),語(yǔ)言是 Swift 。七八月的時(shí)候,我開(kāi)始構(gòu)思一款記錄、分享句子的 App 。由于是業(yè)余的自己用業(yè)余的時(shí)間做,所遇問(wèn)題也非常多,有些能解決掉,有些功能卻是自己想也想不能該如何實(shí)現(xiàn)的,還好自己有一個(gè)好的心態(tài),處于新手階段的自己,也沒(méi)有想一下子就做得很了不起。十月的時(shí)候,終于感覺(jué)到這個(gè) App 可以用起來(lái)了,于是在十月底交費(fèi)開(kāi)通了蘋(píng)果開(kāi)發(fā)者帳號(hào)。并找資料看視頻,尋求上傳 App 的方式,還好,比較順利,一個(gè)晚上的時(shí)間,就將第一個(gè)版本上傳到了 App Store ,接著就是等待了,一周多一點(diǎn)的樣子,審核狀態(tài)變成了「正在審核」,很快,收到郵件通知,審核未能通過(guò)。

我查找了原因,是因?yàn)樽约旱?App 用戶帳號(hào)管理方面的問(wèn)題。我使用了友盟第三方帳號(hào)管理系統(tǒng),但卻沒(méi)有自己的帳號(hào)管理模塊。我直接將友盟的帳號(hào)模塊完全刪除掉,換用 Parse 來(lái)做 App 的后臺(tái),但很快我發(fā)現(xiàn),訪問(wèn)速度太成問(wèn)題。正當(dāng)我感感有點(diǎn)絕望的時(shí)候,無(wú)意中有人提到了 LeanCloud 這個(gè)服務(wù)。看了看使用文檔,使用上就完全和 Parse 一樣,代碼修改極其簡(jiǎn)單,半小時(shí)就完全修改 OK 了,我立馬打包上傳,結(jié)果發(fā)現(xiàn),真機(jī)上運(yùn)行就出錯(cuò)了:

The identity used to sign the executable is no longer valid.

Please verify that your device’s clock is properly set, and that your signing certificate is not expired.

(0xE8008018).

11111.png

當(dāng)時(shí)就覺(jué)得奇怪了,我只是添加了一個(gè)第三方 SDK ,其它的都沒(méi)有動(dòng)過(guò),怎么就這樣了呢?看樣子是提示簽名或授權(quán)文件現(xiàn)問(wèn)題之類的。我試著在網(wǎng)上尋求解決辦法,果然也有人遇到這樣的問(wèn)題,我進(jìn)行這些方法的嘗試:

  • 重啟 Xcode
  • 刪除 Xcode 里面的 Apple ID ,重啟 Xcode ,再重新登錄 Apple ID ,然后下載 Provisioning Profile 。
  • 關(guān)閉 Xcode ,刪除 /Users/USERNAME/Library/MobileDevice/Provisioning Profiles里面所有的文件。
  • 清除掉/Users/USERNAME/Library/Developer/Xcode/DerivedData目錄中對(duì)應(yīng)項(xiàng)目的目錄。
  • 在 Apple Developer 上刪除原有的 Provisioning Profile 文件,新建,再下載,重新安裝上。

然而卻報(bào)同樣的錯(cuò)誤,接著尋找辦法,感覺(jué)找到了更多的解決辦法:

http://stackoverflow.com/questions/31484742/0xe8008018-the-identity-used-to-sign-the-executable-is-no-longer-valid

看里面的留言,有成功的,也有仍然失敗的,最容易的,就是重啟一下Xcode就搞定了。然后我卻沒(méi)有那到幸運(yùn)。

按著其方式一一作了嘗試,卻仍然沒(méi)有用。心里挺絕望的。于是我開(kāi)始做自己才想到的另一個(gè) App ,前前后后一個(gè)月,白天上班,晚上回家看看書(shū),寫(xiě)寫(xiě)代碼,然后做出來(lái)了。這月初的時(shí)候提交審核,15號(hào)審核通過(guò),正多上架。一下子挺受鼓舞,就拿起以前的 App ,想重新弄下。將以前試過(guò)的方法又重新試過(guò),仍然無(wú)果。我在一個(gè) QQ 開(kāi)發(fā)群中求助,得到到一朋友的幫助,所用方法,也是我嘗試過(guò)的。接著我想到了蘋(píng)果的開(kāi)發(fā)者技術(shù)團(tuán)隊(duì)。于是向他們發(fā)了郵件,盡量的將我息遇問(wèn)題及解決辦法給他們說(shuō)了,他們當(dāng)天給了回復(fù),建議我將 Xcode 刪除掉再重裝,昨天晚上按此方法試了,卻仍然報(bào)著一樣的錯(cuò)。

不過(guò)我卻仍然沒(méi)有放棄,盡管我心理頭想可以跳過(guò)這個(gè) App ,重新再做一個(gè)功能更強(qiáng)一點(diǎn)的,但問(wèn)題放在這里總會(huì)是個(gè)問(wèn)題,萬(wàn)一哪天我又遇到怎么辦呢?我新建了一個(gè)項(xiàng)目,把原有項(xiàng)目里的文件全部復(fù)制到新項(xiàng)目中,安裝 SDK, 然后進(jìn)行調(diào)試,原以為一切OK,然后,錯(cuò)誤一樣出現(xiàn)了!

無(wú)意中我查看 App 的編譯信息時(shí),發(fā)現(xiàn)有一行貌似 LeanCloud 有請(qǐng)求證書(shū)的代碼,而所報(bào)之錯(cuò),也是關(guān)于證書(shū)的,難著這個(gè) SDK 使用也需要先申請(qǐng)證書(shū)?我上 LeanCloud 的網(wǎng)站查看文檔,找到了這樣的資料:

https://leancloud.cn/docs/ios_push_cert.html

原來(lái)是要開(kāi)啟信息推送功能:

為 App 開(kāi)啟 Push Notification 功能。如果是已經(jīng)創(chuàng)建的 App ID 也可以通過(guò)設(shè)置開(kāi)啟 Push Notification 功能。

需要兩個(gè)新的證書(shū),然后再更新授權(quán)文件。但真機(jī)運(yùn)行時(shí),同樣報(bào)錯(cuò),于是我動(dòng) SDK 的 BBS 看尋求幫助,發(fā)現(xiàn)了這個(gè)貼子:

https://forum.leancloud.cn/t/ios-avoscloud-framework-code-signature/3667/12

所遇問(wèn)題和我的一樣,提示升級(jí) Xcode ,我看我 SDK 的版本是 3.1.5.2 的,我將其升級(jí)到了 3.1.6.8 ,這里,我驚喜的發(fā)現(xiàn),和原來(lái)報(bào)的錯(cuò)不一樣了,而變成了這樣:

屏幕快照 2015-12-17 22.33.58.png

盡管還有錯(cuò)誤,但總算是有了新的起色,也算是一個(gè)不錯(cuò)的消息了,我英文不太好,但我猜還是授權(quán)文件方面的問(wèn)題吧,但我確實(shí)是才重新做了授權(quán)文件的。

最后發(fā)現(xiàn),還是 SDK 的使用問(wèn)題,我手動(dòng)添加了最新版的 SDK 之后,就一切 OK 了,現(xiàn)在真機(jī)也能運(yùn)行上了!

最后,總結(jié)一下這次經(jīng)歷的經(jīng)驗(yàn)教訓(xùn)吧。

  • 遇到的問(wèn)題,多半不止自己一個(gè)人遇到,通過(guò)網(wǎng)絡(luò)查找,一般可以解決。
  • 向他們求助,但這一步一定要在自己實(shí)無(wú)可想之法時(shí)才進(jìn)行。
  • 開(kāi)發(fā)文檔應(yīng)該仔細(xì)閱讀。即便不想讀,也至少全程瀏覽一遍,有個(gè)印象之后,能方便問(wèn)題的定位。
  • 受難時(shí)別迷失了方向,前期的嘗試感覺(jué)在方向上都出了問(wèn)題,利于排除法,問(wèn)題應(yīng)該能很快的定位到是由于第三方 SDK 所起的錯(cuò)誤。

問(wèn)題得到解決,又可以繼續(xù)了!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,362評(píng)論 6 544
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,577評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 178,486評(píng)論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,852評(píng)論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,600評(píng)論 6 412
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,944評(píng)論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,944評(píng)論 3 447
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 43,108評(píng)論 0 290
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,652評(píng)論 1 336
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,385評(píng)論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,616評(píng)論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,111評(píng)論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,798評(píng)論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 35,205評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 36,537評(píng)論 1 295
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,334評(píng)論 3 400
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,570評(píng)論 2 379

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