我们希望能够让用户在我们的应用程序中选择任何已安装的电子邮件客户端(Gmail,Yandex等)。但iOS只提供Mail或内置MFMailComposeViewController
。有什么办法向用户展示电子邮件客户列表吗?让用户在iOS上选择电子邮件客户端
回答
有没有办法直接做到这一点,因为iOS不知道“默认应用程序”的概念。你可以实现一个函数来检查不同iOS电子邮件客户端使用的各种URL,并确定安装了哪些客户端。例如,GMail使用googlegmail://
。您也可以使用设备上的客户端显示菜单。
如果你不想创建你自己的实现,ThirdPartyMailer是一个库,可以为你做到这一点。
如果您正在寻找类似于Android处理它的方式,那么不可能。有些电子邮件应用可能支持自定义方案 - 例如Gmail使用googlegmail://
(取自this question)。
你应该尝试这样的事:
let url = NSURL(string: "mailto:[email protected]")
UIApplication.sharedApplication().openURL(url)
谢谢,但这会打开iMail。 – demensdeum
所以你必须创建你自己的Picker与可用邮件客户端列表。要建立这个列表,你可以检查每个方案,如果'canOpenUrl:'它会告诉你,如果用户已经安装了应用程序 – Maxime
我想知道是否有办法呈现所有应用程序,可以处理“mailto”链接。 – demensdeum
- 1. 发送电子邮件客户端兼容电子邮件
- 2. 检测电子邮件发送的电子邮件客户端
- 3. java中的电子邮件客户端
- 4. 电子邮件客户端检测
- 5. Django电子邮件客户端
- 6. 从客户端发送电子邮件
- 7. 从客户端发送电子邮件
- 8. 通过客户端发送邮件,无需启动电子邮件客户端(无提示电子邮件)
- 9. 在Android上开发电子邮件客户端应用程序
- 10. 如何使用Swfit在ios上启动电子邮件客户端
- 11. 使用openURL从Yahoo邮件客户端发送电子邮件
- 12. Facebook邮件在电子邮件客户端Thunderbird
- 13. Netsuite:您如何让客户选择不使用电子邮件爆炸?
- 14. 将附件添加到客户端的默认电子邮件客户端
- 15. PHP:电子邮件只适用于某些电子邮件客户端
- 16. 如何使用电子邮件客户端发送电子邮件?
- 17. 如何在Web电子邮件客户端中显示HTML电子邮件?
- 18. Android发送电子邮件不存在发送的电子邮件客户端
- 19. ASP电子邮件客户端错误,GridView的和复选框
- 20. 电子邮件帐户密码如何在邮件客户端中加密
- 21. 选择每个客户的电子邮件
- 22. ANDROID |只发送电子邮件附件与电子邮件客户端
- 23. 沙箱用户iOS电子邮件
- 24. 确定是否在使用Blackberry Invoke API调用的电子邮件客户端上发送电子邮件
- 25. 如何从电子邮件客户端获取电子邮件通知?
- 26. 电子邮件客户端看不到纯文本替代HTML电子邮件
- 27. 如果没有电子邮件客户端通过VB6发送电子邮件
- 28. 从桌面电子邮件客户端路由电子邮件到PHP?
- 29. 按电子邮件并打开默认电子邮件客户端
- 30. 明文/ HTML电子邮件在mac邮件客户端不起作用
可能的重复[如何启动一个电子邮件客户端使用Swfit的ios上](https://stackoverflow.com/questions/26052815/how-can-i-launch-an-email-client-on-ios-使用swfit) – Maxime
iMail? iMail View Controller? –
我的意思是邮件或MFMailComposeViewController – demensdeum