Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MFMailComposeViewController without Mail app installed?

Now that apps like Apple's "Mail" app can be deleted in iOS 10, what will happen when a developer attempts to initialize and present MFMailComposeViewController and the default Mail app is not installed and configured on the device?

If the app crashes, what is the best way to check for this case?

like image 802
Jake Chasan Avatar asked Jun 13 '16 22:06

Jake Chasan


1 Answers

On iOS 12 and above, canSendMail() will return true even if the Mail app is not installed. The MFMailComposeViewController will be presented, but the user will be unable to send mail.

On iOS versions below 12:

It looks like MFMailComposeViewController.canSendMail() will return false, and MFMailComposeViewController() will cause a crash (EXC_BAD_ACCESS). Use the canSendMail() check to determine if the device can show a MFMailComposeViewController.

like image 141
JAL Avatar answered Nov 09 '22 12:11

JAL