防止应用程序崩溃
是否可以防止应用程序崩溃?防止应用程序崩溃
在很多应用程序中,我经历了许多崩溃,但有时很难找到崩溃的原因,并且找到解决方案变得非常耗时。
我只是想知道是否有任何代码片段可以给你什么是崩溃的原因,或者我们可以使用@ try- @ catch来阻止它。
如果可以通过@ try- @ catch避免,那么我应该在哪里放置try-catch?
可以通过分析崩溃,诊断原因以及编写或修改代码来防止崩溃,从而防止崩溃。
不幸的是,软件开发不仅仅是最初的输入。测试和错误修复是您花费大部分时间的地方。如果这对你来说太乏味,我推荐一个不同的职业,因为这就是这样。
我很感谢你的回答丹,但我只是想知道应用程序崩溃是否可以知道哪一点它崩溃发生? – iNeal 2012-08-17 12:34:09
@Neal NSException在中止应用程序之前打印堆栈跟踪 - 它将被打印到控制台。此外,调试器将突出显示抛出异常的代码行。 – 2012-08-17 13:02:08
我一直在寻找这个解决方案。 可以使用以下方法打印更具描述性的迹线。我认为这可以帮助找到正确的理由。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
}
void uncaughtExceptionHandler(NSException *exception) {
NSLog(@"CRASH: %@", exception);
NSLog(@"Stack Trace: %@", [exception callStackSymbols]);
}
无法防止应用程序崩溃。但是我们可以使用它来获取更详细的跟踪日志。我接受我的问题被错误地询问并且未被清除。抱歉不清楚。
我再次花时间在此。最后,我得到了文章和演示,它将在您的应用中捕获您的例外或BAD_ACCESS。因此,这对于所有开发人员在其应用程序中提供诸如SUBMIT BUG等功能都非常有帮助,因此,无论何时,如果用户有任何异常,他们都可以继续或退出或向开发人员提交崩溃报告。它真的很有帮助。我将在我的所有项目中实施。
以下是文章由马特·加拉格尔
http://cocoawithlove.com/2010/05/handling-unhandled-exceptions-and.html
感谢马特·加拉格尔。
您可以使用try-catch-finally块,以避免应用程序崩溃如下:
-(void)functionInsideWhichAppIsCrashing
{
@try
{
//Your crashing code goes here
}
@catch (NSException *e)
{
NSLog(@"Crash Reason:@"%@", [e reason]);
}
@finally {// Do whatever you want to do in crash situation
}
}
'它变得如此繁琐和时间consuming' - 哦,亲爱的!这并不是寻找所有产品的好理由! – 2012-08-17 12:14:39
异常使你的代码崩溃的原因 - 异常表明这样一个根本性的失败,没有合理的方式来恢复异常。 – 2012-08-17 12:28:08
如果你想对经验丰富的开发人员使用的技巧提出一些建议,可以阅读以下回复:http://*.com/a/11944253/96716 – 2012-08-17 13:47:59