美文网首页OC进化iOS 开发
解决ios抛出异常信息导致崩溃

解决ios抛出异常信息导致崩溃

作者: 夜千寻墨 | 来源:发表于2015-11-14 16:02 被阅读1009次

在项目中读取本地数据的时候,

[NSKeyedUnarchiverunarchiveObjectWithFile:[selfsavePath]

有一定的概率会抛出异常,当然这个概率不到万分之一,这里只是举个例子。

抛出异常后程序肯定会崩溃,我也是今天才发现原来是有办法避免这种崩溃的。

看个例子:常见的越界问题

NSString*test =@"test";

unichara;

intindex =6;

a = [testcharacterAtIndex:index];

这样运行直接崩溃

换种方式:

NSString*test =@"test";

unichara;

intindex =6;

@try{

a = [testcharacterAtIndex:index];

}@catch(NSException *exception) {NSLog(@"%@", exception.reason);

}@finally{

NSLog(@"Char at index %d cannot be found", index);

NSLog(@"Max index is: %lu", [testlength]-1);}

使用

@try{

}@catch(NSException *exception) {

}@finally{

}

可以捕获异常,并且不会崩溃,代码依然执行

相关文章

  • 解决ios抛出异常信息导致崩溃

    在项目中读取本地数据的时候, [NSKeyedUnarchiverunarchiveObjectWithFile:...

  • iOS疑难崩溃问题梳理

    负责iOS版本质量这段时间碰到了不少疑难崩溃,它们的统一特点就是崩溃栈信息十分十分不明确,导致解决起来异常困难。这...

  • iOS Crash 大解析

    iOS crash / 崩溃/ 异常 /捕获 1 崩溃日志(crash log) Xcode中 查看崩溃信息 手...

  • 第十一讲 异常

    exception java中很多操作会抛出异常,异常可能会导致程序崩溃。如:空指针异常。 为了让程序可以继续执行...

  • IOS微信API异常:unrecognized selector

    在iOS10中整合微信API的时候,在运行程序的过程中可能会在注册你的APPID的时候抛出此异常而导致程序崩溃。 ...

  • log.error()输出的异常栈没有“关键”信息解决方案

    1. 测试代码 测试代码: 2. 直接抛出异常: 异常信息: lombok的@Data注解用在异常子类,导致堆栈没...

  • ios调试

    # 异常断点 作用:可以定位到导致程序异常崩溃的那行代码。 好处:一些类在不满足条件时(如数组越界),会抛出异常导...

  • Xcode常用调试技巧

    一、异常断点 作用:可以定位到导致程序异常崩溃的那行代码。 好处:一些类在不满足条件时(如数组越界),会抛出异常导...

  • 02.Android崩溃Crash库之App崩溃分析

    目录总结 01.抛出异常导致崩溃分析 02.RuntimeInit类分析 03.Looper停止App就退出吗 0...

  • 崩溃异常学习一(简单了解异常类)

    开发中我们经常会遇到崩溃,控制台输出的日志信息就是NSException产生的,一旦程序抛出异常,程序就会崩溃,控...

网友评论

本文标题:解决ios抛出异常信息导致崩溃

本文链接:https://www.haomeiwen.com/subject/eqlkhttx.html