ios开发教程异常处理方法

ios开发教程异常处理方法

ID:8804548

大小:19.55 KB

页数:3页

时间:2018-04-08

ios开发教程异常处理方法_第1页
ios开发教程异常处理方法_第2页
ios开发教程异常处理方法_第3页
资源描述:

《ios开发教程异常处理方法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、IT在线教育平台———麦子学院:http://www.maiziedu.com在IOS开发中,我们一般都会需要捕获异常,防止应用程序突然的崩溃,给用户不友好的印象。其实OBJECT-C的异常处理方法和JAVA的雷同,下面我们一起来看看,以下程序已测试并通过:设备:IOS8模拟器中开发工具:XCode6.1@try{//可能会出现崩溃的代码}@catch(NSException*exception){//捕获到的异常exception}@finally{//结果处理}在这里举多一具比较详细的方法,抛出异常:@try{//1[selftryTwo];}@catch(NSException*e

2、xception){//2NSLog(@"%s%@",__FUNCTION__,exception);//@throwexception;//这里不能再抛异常}@finally{//3NSLog(@"我一定会执行");}IT在线教育平台———麦子学院:http://www.maiziedu.com//4//这里一定会执行NSLog(@"try");tryTwo方法代码:-(void)tryTwo{@try{//5NSString*str=@"abc";[strsubstringFromIndex:111];//程序到这里会崩}@catch(NSException*exception)

3、{//6//@throwexception;//抛出异常,即由上一级处理//7NSLog(@"%s%@",__FUNCTION__,exception);}@finally{//8NSLog(@"tryTwo-我一定会执行");}//9//如果抛出异常,那么这段代码则不会执行NSLog(@"如果这里抛出异常,那么这段代码则不会执行");}为了方便大家理解,我在这里再说明一下情况:如果6抛出异常,那么执行顺序为:1->5->6->8->3->4如果6没抛出异常,那么执行顺序为:1->5->7->8->9->3->4IT在线教育平台———麦子学院:http://www.maiziedu.

4、com2)部分情况的崩溃我们是无法避免的,就算是QQ也会有崩溃的时候。因此我们可以在程序崩溃之前做一些“动作”(收集错误信息),以下例子是把捕获到的异常发送至开发者的邮箱。AppDelegate.m-(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions{//Overridepointforcustomizationafterapplicationlaunch.NSSetUncaughtExceptionHandler(&Uncaught

5、ExceptionHandler);returnYES;}voidUncaughtExceptionHandler(NSException*exception){/***获取异常崩溃信息*/NSArray*callStack=[exceptioncallStackSymbols];NSString*reason=[exceptionreason];NSString*name=[exceptionname];NSString*content=[NSStringstringWithFormat:@"========异常错误报告========name:%@reason:%@c

6、allStackSymbols:%@",name,reason,[callStackcomponentsJoinedByString:@""]];/***把异常崩溃信息发送至开发者邮件*/NSMutableString*mailUrl=[NSMutableStringstring];[mailUrlappendString:@"mailto:test@qq.com"];[mailUrlappendString:@"?subject=程序异常崩溃,请配合发送异常报告,谢谢合作!"];[mailUrlappendFormat:@"&body=%@",content];//打开地址NS

7、String*mailPath=[mailUrlstringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:mailPath]];}如需了解更多IOS开发知识,请至麦子学院官网查询。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。