ios - 检测 iPhone/iPad 电子邮件客户端是否已配置/有效

标签 ios objective-c cocoa-touch email

我在打开 MFMailComposeViewController 时遇到一个应用程序严重崩溃的问题,它在模拟器上运行良好,但在设备上崩溃了。

花了几个小时后,我意识到原因是我用于测试的 iPad 上的内部电子邮件客户端没有设置/配置 - 在设备上设置电子邮件后,一切正常。

因此我的问题是:我能否检测设备电子邮件客户端是否已配置且有效,以避免在尚未设置其内部 iPad/iPhone 电子邮件客户端的设备上再次发生同样的崩溃?

最佳答案

只需检查 canSendMail 类方法:

if ([MFMailComposeViewController canSendMail]) {
  // Yes we can send mail.
}

我所做的是检查方法并仅在返回 true 时显示邮件选项。

关于ios - 检测 iPhone/iPad 电子邮件客户端是否已配置/有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7647297/

相关文章:

ios - 如何以编程方式在 View 之间转换?

ios - 将 [UIImage] 数组中的图像存储到 Parse

iphone - 没有 Google map 的 iOS 上的 Panoramio 图片

ios - 哪些 iOS 设备具有接近监控功能?

objective-c - 在内存中保存长字符串的最佳方法是什么? ( cocoa )

ios - 在调试监视中显示非 Objective-C 变量

cocoa-touch - 在 SKScene 中处理摇动手势

ios - Facebook SDK ios v4.4.0 didFinishLaunchingWithOptions

ios - 如何使用 Unicode 将自定义符号分配给 UIButton?

ios - 保持 NSURLConnection 打开 + 分块编码上传