注意 注意:關(guān)于iOS9.2.1 App從AppStore上下載閃退的問題!

我是一名做iOS開發(fā)的小白,出于愛好會更新發(fā)表些相關(guān)的技術(shù)文章,偶爾也會發(fā)些視頻。懇請大家不要去嘲笑一個努力的人,要是做的不好請多多評論,反正我也不改。


是這樣,前一陣我本來在開開心心的對著項目進行輸出,但是突然有個同事說自己的app有問題,更新版本后再一運行就莫名其妙的崩潰。這讓我很驚訝,因為這不符合道理!

經(jīng)過我的真機測試,發(fā)現(xiàn)并沒有這個問題出現(xiàn)。我查看了崩潰日志,發(fā)現(xiàn)斷點處代碼都不在關(guān)鍵點上,于是就請求了蘋果的技術(shù)支持(一年就兩次,多了花錢)。蘋果的技術(shù)支持不愧是貨真價實,回復(fù)的干脆:看文檔!

哦。。。嗯?先不說文檔那么一大塊,還是全英文的。當(dāng)然了,雖然在你們看來英文的文檔根本沒法看,但在我們搞開發(fā)的程序猿來說,尤其是我,那也是一臉懵逼。

于是乎我只能慢慢搜索問題,經(jīng)過各種查證發(fā)現(xiàn)是一張圖片有了問題。圖片如果是16位或者P3的色域,就會在并且只在iOS 9.2.1系統(tǒng)下崩潰(顯然這個系統(tǒng)是有毒的)。

發(fā)現(xiàn)自然就能解決,先打一個ipa包并解壓,使用終端輸入:cd path/Payload/XXX.app,path就是你的路徑了。

接著使用find:find . -name 'Assets.car'。

接著使用 assetutil 命令導(dǎo)出圖片的信息存儲到Assets.json文件中:sudo xcrun --sdk iphoneos assetutil --info/path/to/a/Assets.car> /tmp/Assets.json 把path替換成剛才find下的結(jié)果。

打開剛才生成的Assets.json文件,查找含有”DisplayGamut” : “P3”, “Encoding” : “ARGB-16″的內(nèi)容。這個對應(yīng)的Name就是出現(xiàn)問題的圖片了。

這里我建議直接讓美工重新做一張圖片,這樣沒有任何問題了,但也可以直接修改問題圖片。

這樣我們就不用去定位是哪個圖片的問題了,或許更方便一些。

這里我們使用bash script直接處理所有圖片為正確格式:


好了,這個問題到這里還是有沒解決的話,就可以跟老板說蘋果這個系統(tǒng)有問題,不是咱們的鍋。

加本菇?jīng)鯭群562984021一起交流咯,大家一起學(xué)習(xí)討論,共同進步吧!~.~

(機會永遠是留給那些有準(zhǔn)備的人)? ? ??謝謝大家支持 ?。?!↓↓↓

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容