Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Crash when open presentModalViewController using MFMailComposeViewController

One user reports my App crashed immediately after he taps the email button. But I cannot reproduce the problem on my device with same spec.

Crash log as attached.I call [self presentModalViewController:controller animated:YES]; in my reportVC.m. the controller is an instance of MFMailComposeViewController.

Incident Identifier: 4A06DE9B-178C-43C2-AE23-D8C7EEED7831
CrashReporter Key:   8b802dcda2f9dfd70003b0bedceac04ef79730f0
Hardware Model:      iPad3,6
Process:         ATracker [5610]
Path:            /var/mobile/Applications/ACABBAE7-C701-48AD-9DAC-9B4C0ABD3CFF/ATracker.app/ATracker
Identifier:      ATracker
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2013-07-15 18:42:30.776 +0100
OS Version:      iOS 6.1.3 (10B329)
Report Version:  104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread:  0

Last Exception Backtrace:
0   CoreFoundation                  0x3286c3e2 __exceptionPreprocess + 158
1   libobjc.A.dylib                 0x3a70695e objc_exception_throw + 26
2   UIKit                           0x34767118 -[UIViewController presentViewController:withTransition:completion:] + 3764
3   UIKit                           0x34888d9e -[UIViewController presentModalViewController:animated:] + 26
4   ATracker                        0x0007fac2 -[ReportVC sendEmail:] (ReportVC.m:1936)
5   UIKit                           0x34766082 -[UIApplication sendAction:to:from:forEvent:] + 66
6   UIKit                           0x34766036 -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 26
7   UIKit                           0x34766010 -[UIControl sendAction:to:forEvent:] + 40
8   UIKit                           0x347658c6 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 498
9   UIKit                           0x34765db4 -[UIControl touchesEnded:withEvent:] + 484
10  UIKit                           0x3468e5f4 -[UIWindow _sendTouchesForEvent:] + 520
11  UIKit                           0x3467b8dc -[UIApplication sendEvent:] + 376
12  UIKit                           0x3467b1ea _UIApplicationHandleEvent + 6194
13  GraphicsServices                0x3636f5f2 _PurpleEventCallback + 586
14  GraphicsServices                0x3636f222 PurpleEventCallback + 30
15  CoreFoundation                  0x328413e2 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 30
16  CoreFoundation                  0x32841386 __CFRunLoopDoSource1 + 134
17  CoreFoundation                  0x3284020a __CFRunLoopRun + 1378
18  CoreFoundation                  0x327b3238 CFRunLoopRunSpecific + 352
19  CoreFoundation                  0x327b30c4 CFRunLoopRunInMode + 100
20  GraphicsServices                0x3636e336 GSEventRunModal + 70
21  UIKit                           0x346cf2b4 UIApplicationMain + 1116
22  ATracker                        0x00044fe6 main (main.m:16)
23  ATracker                        0x00044f9c start + 36

Any idea or hint is appreciated!

like image 908
user2585453 Avatar asked Jul 16 '13 00:07

user2585453


1 Answers

should detect the device canSendMail

[MFMailComposeViewController canSendMail]

return false if there is no mail acount on the device.

@see https://stackoverflow.com/a/3671759/946434

like image 184
Maxwin Avatar answered Nov 18 '22 16:11

Maxwin