我在设置未捕获的异常处理程序时遇到了一些问题。这是我在做什么:
在应用程序委托(delegate).h中:
- (void) uncaughtExceptionHandler(NSException *exception);
在应用程序委托(delegate).m中:
void uncaughtExceptionHandler(NSException *exception) {
[FlurryAPI logError:@"Uncaught" message:@"Crash!" exception:exception];
}
- (void)applicationDidFinishLaunching:(UIApplication *)application {
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler); // error line
[FlurryAPI startSession:@"API_KEY"];
....
}
我收到以下错误:
Use of Undeclared Identifier "uncaughtExceptionHandler"
最佳答案
尝试从应用程序委托(delegate).h中的方法声明中删除前导“-”。这似乎是一个较低级的,类似于C的函数,而不是Object-C面向对象的实例方法(这是方法声明中的“-”的意思)。
它看起来应该像这样:
void uncaughtExceptionHandler(NSException *exception);