全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IT在线教育平台麦子学院:在IOS开发中,我们一般都会需要捕获异常,防止应用程序突然的崩溃,给用户不友好的印象。其实OBJECT-C的异常处理方法和JAVA的雷同,下面我们一起来看看,以下程序已测试并通过:设备:IOS8模拟器中开发工具:XCode6.1try / 可能会出现崩溃的代码catch (NSException *exception) / 捕获到的异常exceptionfinally / 结果处理在这里举多一具比较详细的方法,抛出异常:try / 1 self tryTwo;catch (NSException *exception) / 2 NSLog(%sn%, _FUNCTION_, exception);/ throw exception; / 这里不能再抛异常finally / 3 NSLog(我一定会执行);/ 4/ 这里一定会执行NSLog(try);tryTwo方法代码:- (void)tryTwo try / 5 NSString *str = abc; str substringFromIndex:111; / 程序到这里会崩 catch (NSException *exception) / 6/ throw exception; / 抛出异常,即由上一级处理 / 7 NSLog(%sn%, _FUNCTION_, exception); finally / 8 NSLog(tryTwo - 我一定会执行); / 9 / 如果抛出异常,那么这段代码则不会执行 NSLog(如果这里抛出异常,那么这段代码则不会执行);为了方便大家理解,我在这里再说明一下情况:如果6抛出异常,那么执行顺序为:1-5-6-8-3-4如果6没抛出异常,那么执行顺序为:1-5-7-8-9-3-42)部分情况的崩溃我们是无法避免的,就算是QQ也会有崩溃的时候。因此我们可以在程序崩溃之前做一些“动作”(收集错误信息),以下例子是把捕获到的异常发送至开发者的邮箱。AppDelegate.m- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions / Override point for customization after application launch. NSSetUncaughtExceptionHandler(&UncaughtExceptionHandler); return YES;void UncaughtExceptionHandler(NSException *exception) /* * 获取异常崩溃信息 */ NSArray *callStack = exception callStackSymbols; NSString *reason = exception reason; NSString *name = exception name; NSString *content = NSString stringWithFormat:=异常错误报告=nname:%nreason:n%ncallStackSymbols:n%,name,reason,callStack componentsJoinedByString:n; /* * 把异常崩溃信息发送至开发者邮件 */ NSMutableString *mailUrl = NSMutableString string; mailUrl appendString:mailto:; mailUrl appendString:?subject=程序异常崩溃,请配合发送异常报告,谢谢合作!; mailUrl appendFormat:&body=%, content; / 打开地址 NSString *mailPath = mailUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding; UI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中考真题抢先练:数学第1期
- 谷氨酸封端聚醚阻垢剂:合成、性能及应用的深度探究
- 调理肝脾法对腹泻型肠易激综合征的疗效及作用机制探究
- 2026年上海市眼病防治中心医护人员招聘考试参考试题及答案详解
- 语用顺应论:解锁科普英语翻译的密码
- 语料库视角下中国学习者英语口语程式化序列的多维剖析
- 2026浙江师范大学招聘科研助理42人笔试参考题库及答案详解
- 宜宾学院2026年公开招聘助学助管员考试参考题库及答案详解
- 2026上海浦东机场招聘客舱清洁储备干部笔试模拟试题及答案详解
- 2026河南郑州郑东新区美秀小学教师招聘考试模拟试题及答案详解
- 2026贵州能源集团有限公司第一批综合管理岗招聘41人参考笔试试题及答案解析
- 2025年中国智慧农业发展研究报告
- 癌症自愈探索深层感觉脉动法
- 2025江苏苏州市健康养老产业发展集团有限公司下属子企业招聘4人(第五批)笔试历年备考题库附带答案详解试卷2套
- 高二语文2025年上学期期末测试试卷(含答案)
- 方形井盖施工方案
- (2025年)自贡事业编面试真题及答案
- 2025年福建省省级机关遴选公务员考试真题及答案解析
- 个人收入及纳税证明模板标准版
- 2025年河北廊坊三河市人民医院招聘28人考试参考试题及答案解析
- minitab17简单入门教学
评论
0/150
提交评论