我正在写自己的图书馆。我想抓住我图书馆的崩溃事件。库生成多个线程,写入数据库,连接到远程服务器等。
我的问题:我是否有能力抓住由我的图书馆引起的崩溃?
更新1:
@ try / @ catch只会处理方法调用中的异常
@try {
do smth
//do async task in database
//start sending data to remote server
}
@catch {
}
更新2:
我想要捕获NSExceptions,EX_BAD_ACCESS以及可能的SIGABRT,SIGKILL,低内存等。
答案 0 :(得分:1)
不,每个库都不可能,尤其是因为iOS上的库将静态链接到实际的应用程序中。每个应用程序进程都会发生崩溃,无法将崩溃报告库限制为应用程序代码的子集。
您唯一的选择是尽可能好地测试您的代码,以便它没有可能导致崩溃的错误。使用仪器,静态分析仪,写测试。