0

使用 CodeRunner 测试 Objective-C 代码片段时,在运行时抛出的任何异常都会导致崩溃,随后会发出<my program> quit unexpectedly警报,其中包含完整的堆栈跟踪和崩溃报告保存在~/Library/Logs/DiagnosticReports.

例如,异常可能是方法名称拼写错误的结果,并且可能经常发生,具体取决于您的个人开发风格。值得注意的是,这个崩溃报告也会发送给 Apple,这对于拼写错误的方法名称来说似乎有点过分。

可以避免此警报和崩溃报告吗?

4

1 回答 1

1

可以在应用程序的首选项设置中为每种编程语言更改默认代码模板。

如果添加了 try-catch 块,则代码片段可以捕获它自己的所有异常,例如只打印一条日志语句,从而避免崩溃报告。

对于 Objective-C,它看起来像这样:

#import <Foundation/Foundation.h>

int main(int argc, char *argv[]) {
    @autoreleasepool {
    @try {

    %@

    } @catch (NSException *e) {
        NSLog(@"Exception caught: %@", e);
    }
    }
}

%@定义打开新文件时的初始插入点。

于 2013-06-29T16:01:44.153 回答