邮件 - 从 UIActivityController 添加帐户屏幕

Mail - Add Account screen from UIActivityController

我实现了一个简单的UIActivityViewController如下

let activityController = UIActivityViewController(activityItems: activityItems, applicationActivities: nil)

activityController.completionWithItemsHandler = { activityType, completed, returnedItems, activityError in
    if let error = activityError where !completed && activityType != nil {
        // report the error
    }
}

我认为如果用户没有邮件帐户,Add Account 邮件屏幕可以由 UIActivityViewController 实例自动处理,但事实并非如此。

我尝试的第一件事是分析完成闭包:activityError 实例为 nil,completed 值为 false。太好了,每当调用具有这些值的闭包时,我都会使用这个解决方法 (i want to open from my aap. "settings >> mail >> add account " (the add account page) is it possible.?)。但当用户在邮件编辑器上按 Cancel 时也会调用它。

那么,照片和其他非 Apple 应用程序如何处理这种情况?谢谢

Apple 似乎没有很好地处理 activityItems 中的 NSURL 类型。 我通过使用该实例的 absoluteString 值解决了它。