在iOS里對異常的處理及捕獲,并沒有其它語言里那么常見,相信很多iOS程序員都知道,更多的時候是對內(nèi)存的的檢測與分析,檢測相關(guān)內(nèi)存方面的問題。
而在app閃退并不是因為內(nèi)存的時候,這時候我們完全可以將常見的一些異常捕獲。
捕獲后發(fā)送至服務(wù)器,并且友好提示用戶錯誤,或則直接回滾到用戶操作前,阻止應(yīng)用程序的崩潰。
這時可以利用xcode自帶的try 來處理,避免程序崩退。

這里我們需要利用到兩個框架。 兩個第三方框架的,使用按具體的情況來應(yīng)對
都可以在github上搜到
可以檢測出常見錯誤,并友好的提示用戶 例如
使用方法:
1、首先需要在appDelegate中使用InstallUncaughtExceptionHandler()用于監(jiān)聽2、添加UncaughtExceptionHandler這個類iOS SDK提供的函數(shù)是NSSetUncaughtExceptionHandler來進(jìn)行異常處理。但是無法處理內(nèi)存訪問錯誤、重復(fù)釋放等錯誤,因為這些錯誤發(fā)送的SIGNAL。所以需要處理這些SIGNAL
效果在Demo里可以來檢測。
可以阻止程序崩潰,并且可以自己寫段邏輯在后臺攔截到異常信息,發(fā)送至服務(wù)器,讓程序從容運(yùn)行。
缺點:用戶沒用提示,操作回滾。
使用方法:導(dǎo)入即可
#import "DurexKit.h"
1.1.將文件夾 "DurexKit" 添加到項目中;
1.2.#import "DurexKit.h"
1.3.無需修改項目中的任何代碼。
作者: 清澈Saup
出處: http://m.survivalescaperooms.com/qingche/
本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但必須保留此段聲明,且在文章頁面明顯位置給出原文連接。
新聞熱點
疑難解答