Как запустить приложение iOS mail в Swift?
Я создаю приложение iOS с функцией сброса пароля, которое отправляет пользователю электронное письмо. После отправки сообщения электронной почты я хочу показать UIAlertController
пользователю, спрашивая его, не хочет ли он открыть почтовое приложение.
Я видел здесь различные сообщения по следующим направлениям:
let url = NSURL(string: "mailto:")
UIApplication.sharedApplication().openURL(url!)
Это работает, но, к сожалению, он начинает новое сообщение, которое не является тем, что я хочу. Я только хочу запустить приложение, чтобы пользователь мог видеть свой почтовый ящик.
2 ответа:
Не проверял себя, но, возможно, этот ответ поможет вам:
По-видимому, Почта поддерживает вторую схему urlmessage://
, которая (я полагаю) позволяет вам открыть определенное сообщение, если оно было получено вашим приложением. Если вы не предоставите полный url-адрес сообщения, он просто откроет Mail:let mailURL = NSURL(string: "message://")! if UIApplication.sharedApplication().canOpenURL(mailURL) { UIApplication.sharedApplication().openURL(mailURL) }
Взято из: запуск приложения Apple Mail из моего собственного приложения?
Способ Swift 3.0.1 простого открытия почтового приложения выглядит следующим образом:
private func openMailClient() { let mailURL = URL(string: "message://")! if UIApplication.shared.canOpenURL(mailURL) { UIApplication.shared.openURL(mailURL) } }
Как правильно сказал "dehlen", использование схемы
message://
откроет приложение mail только в том случае, если не будет предоставлена дополнительная информация.