App 发生异常闪退给开发者发送邮箱信息问题!!!求解决!!!

问题:下面这段代码网上说app 发生异常闪退的时候会给开发者发送消息,然而出现闪退异常的时候,手机跳转到了苹果原生的邮箱哪里还要填写信息,可不可以发生异常直接自动发短信给开发者呢?不要那么的迂回。。。

- (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:test@qq.com"];
    [mailUrl appendString:@"?subject=程序异常崩溃,请配合发送异常报告,谢谢合作!"];
    [mailUrl appendFormat:@"&body=%@", content];
    // 打开地址
    NSString *mailPath = [mailUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:mailPath]];
}

图片描述

图片描述

阅读 4.1k
2 个回答

当然不能了,短信费谁掏啊?真有这功能估计会被骂死吧……

会 crash 是 app 的问题,没理由要求用户主动报告,更不能在后台偷偷发邮件、发短信,苹果也不会给你这种权限的。

直接加一个友盟或者腾讯 Bugly 就可以解决,或者让后台写个自己的接口不就行了。

那你不能用原生自带的,你需要在网上找一个直接写邮箱和密码那种,直接发邮件。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题