Xcode升到了8,但是在运行程序时,会打印很多没有用的信息。解决方法如下
Edit Scheme-> Run -> Arguments, 在Environment Variables里边添加 OS_ACTIVITY_MODE = disable。
上述问题解决了,但是新的问题来了!错误信息也不打印了!
这就有些麻烦了,有些错误没有打印只能靠猜,非常麻烦啊!
具体实现:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler); return YES; }
void uncaughtExceptionHandler(NSException *exception) { NSLog(@"reason: %@", exception); // Internal error reporting }
NSSetUncaughtExceptionHandler() 可能被重写了, 你调用之前它之后,(比如你引用了一些第三方库, 它的SDK里面可能包含了把Crash的日志上传到服务器, 这样这个日志可能被重写了, 就不打印本地的崩溃信息了) 尽量把它放在didFinishLaunchingWithOptions 最后面的一行代码块里.