IOS除錯正常,打包閃退
阿新 • • 發佈:2019-01-01
今天遇上個奇葩問題,我在真機除錯時,一切都是正常的,但打包成ipa後安裝後,卻發生了閃退。在網上看了一波資料後,發現我們平時真機除錯是用的debug模式,而打包安裝是release模式,而要想在真機除錯時使用release模式,就得進行以下設定。
1,點選停止旁的按鈕,選擇Edit Scheme.
2,在Run裡選擇info,然後在Build Configuration裡選擇Release。
然後就能真機除錯下,發現問題崩潰地點了。 檢查之後,發現問題出現原因竟然是當前控制器請求的網路資料全為空造成的,但列印卻是的確返回了的。一句程式碼一執行,所建立的物件將會立馬變成空。
error: Couldn't materialize: couldn't get the value of variable result: variable not available
Errored out in Execute, couldn't PrepareToExecuteJITExpression
解決辦法是在build settings裡搜尋optimization level,然後將Release改為Nono就可以了
Optimization Level 應該是編譯器的優化程度。
比較早期的時候,硬體資源是比較缺乏的。為了提高效能,開發編譯器的大師們,都會對編譯器(
優化是指編譯器一級的措施,與機器指令比較接近,所以很可能會導致硬體不相容,進而產生了你目前遇到的軟體裝不上的問題。
他是編譯器的行為,與你程式碼理論上不相關的。 蘋果的檢查應該是檢查你的程式碼一級的規範程度,隱私侵權相關的問題。應該是與編譯的過程是無關的。請放心。