如何在没有我的应用程序崩溃的情况下让Crashlytics接收日志?我有以下代码:
if(!context.managedObjectContext save:&error) {
CLS_LOG(@"%@",error.description)
}
Run Code Online (Sandbox Code Playgroud)
发生错误时,我希望Crashlytics服务器收到错误但应用程序应继续运行.
我不需要马上记录.我很乐意在下次重启时获取日志.我只是不想在我的应用程序中触发崩溃以接收日志.
这可能吗?
Tia*_*ida 50
使用crashlytics的新更新,您现在可以使用:
[[Crashlytics sharedInstance] recordError:error];
Run Code Online (Sandbox Code Playgroud)
在斯威夫特:
Crashlytics.sharedInstance().recordError(error)
Run Code Online (Sandbox Code Playgroud)
您可以在此处查看文档.
Rui*_*res 13
有点老问题,但现在你可以使用Answers哪个是Fabric西装Crashlytics的一部分(也是一部分Fabric):
我尝试了下面的线条,它就像魅力一样.在try-catch块中,使用catch块中的以下行
@try {
// line of code here
}
@catch (NSException *exception) {
NSUncaughtExceptionHandler *handler = NSGetUncaughtExceptionHandler();
handler(exception);
}
Run Code Online (Sandbox Code Playgroud)
如http://support.crashlytics.com/knowledgebase/articles/222764-can-i-use-a-custom-exception-handler所述
[UPDATE]
现在在fabric的crashlytics中,我们可以使用简单的函数[Crashlytics recordCustomExceptionName:reason:frameArray:]来发送处理的异常
@try {
// line of code here
}
@catch (NSException *exception) {
NSArray *stack = [exception callStackReturnAddresses];
[[Crashlytics sharedInstance] recordCustomExceptionName: exception.name
reason: exception.reason
frameArray: stack];
}
Run Code Online (Sandbox Code Playgroud)
小智 -4
据我所知,如果你没有正确保护你的代码,你的应用程序无论如何都会崩溃。Crashlylytics,获取此崩溃并在他们设计的 Web 应用程序中以“可读”模式向您展示它们。如果没有崩溃,crashlytics 会采取一切措施。您可以在代码中捕获异常:
@try{
....
}
@catch(NSException ex){...}
Run Code Online (Sandbox Code Playgroud)
在关键部分,但是如果您担心您的应用程序会崩溃或者您发现潜在的错误可能导致您的应用程序出现不良行为并发生故障,那么您应该始终这样做。您始终可以强制在异常中发送或跟踪此错误。
希望能帮助到你
| 归档时间: |
|
| 查看次数: |
26457 次 |
| 最近记录: |