В любом iOS-приложении легко можно реализовать отправку данных по e-mail.

SWIFT - отправка по email

Для этого нужно сделать следующее:




 

1. Импортировать библиотеку MessageUI:

 

import MessageUI

 

 

2. Подписаться на протокол MFMailComposeViewControllerDelegate:

 

class FirstViewController: UIViewControllerMFMailComposeViewControllerDelegate{

 

 

Проще говоря, добавить их в нужный ViewController, получится так:

 

import UIKit

import MessageUI

class FirstViewController: UIViewControllerMFMailComposeViewControllerDelegate {

 

 

3. Добавить следующий код отправки: 

 

@IBActionfuncsendEmail(_sender: Any) {

ifMFMailComposeViewController.canSendMail() {

     letmail = MFMailComposeViewController()

     mail.mailComposeDelegateself

     mail.setToRecipients(["xxxxxx@xxxxxxxxxx.com"])

     mail.setSubject("Any Subject")

     mail.setMessageBody(messageBody, isHTML: true)

     present(mail, animated: true)

}else{

print("Application is not able to send an email")

    }

  }

funcmailComposeController(_controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?) {

controller.dismiss(animated:true)

}

 

 


На @IBAction можно прицепить любую кнопку интерфейса приложения.

Параметр messageBody - переменная, заданная ранее. В нее может быть включен любой текст в HTML-разметке. По сути - это строка, и вместо переменной можно написать любой текст в кавычках, например такой:

     

     mail.setToRecipients(["xxxxxx@xxxxxxxxxx.com"])

     mail.setSubject("Any Subject")

     mail.setMessageBody("<p>This is a test letter, generated of my App</p>", isHTML: true)

     present(mail, animated: true)

 

 

Важный момент:

Протестировать отправку e-mail возможно только из реального устройства! Симулятор это не сможет сделать. Также на устройстве в приложении Почта (MAIL) должен быть настроен хотя бы один почтовый ящик.

 

Комментарии (1)

This comment was minimized by the moderator on the site

Реально работает! Так просто...

Здесь не опубликовано еще ни одного комментария

Оставьте свой комментарий

  1. Опубликовать комментарий как Гость.
0 Значки
Вложения (0 / 3)
Поделитесь своим местоположением

      HEADERS из POSTMAN в виде текста
      HEADERS из POSTMAN в виде текста

      Если в процессе тестирования API необходимо сохранять из POSTMAN результаты запросов, в том числе headers в виде текста, но можно это делать с помощью консоли Postman (если вариант со скриншотами не подходит по какой-то причине :).




      Как использовать промокод appstore
      Как использовать промокод appstore

      Я не часто создаю промокоды, а еще реже ими пользуюсь сам и поэтому каждый раз забываю - куда код вставлять, чтобы использовать, хорошо, что у меня есть эта шпаргалка :)




      Конвертация треков в формат FliteStar/FliteMap
      Конвертация треков в формат FliteStar/FliteMap

      Не смотря на тесную дружбу Jeppesen и Garmin, программы и файлы этих разных производителей, увы, не дружат. И пользователям приходится ломать голову, над той или иной задачей, которая подразумевает использование файлов одного типа в программах другого типа. Например, может возникнуть необходимость отобразить какой-либо GPS-трек, записанный с помощью навигатора Garmin, на карте в программе...




      Как повернуть видео на 90 градусов?
      Как повернуть видео на 90 градусов?

      Многие современные гаджеты имеют встроенную фото/видео камеру (а то и даже две): планшеты, видео регистраторы, мобильные телефоны... Последние по причине очень широкого распространения довольно часто используются владельцами в качестве средства фото или видеофиксации. Причем, зачастую совершенно не задумываясь над итогом, держат мобильный телефон так, как удобнее, а не так, как нужно для...




      Python - сумма всех четных из массива случайных чисел
      Python - сумма всех четных из массива случайных чисел

      В школе на информатике в 9 классе детям преподают Python! Вообще, это классно и лучше всяких бейсиков, фортранов и паскалей. Главное, чтобы преподаватель мог хорошо объяснить и заинтересовать детей в программировании. Соответственно, родителям приходится разбираться с домашними и самостоятельными работами по программированию:)




      Ошибка
      Ошибка "Failed to initialize JIT-EDocs API"

      Пользователи, на компьютерах (ноутбуках) которых установлены программы Jeppesen FliteStar/FliteMap и Jepp View иногда после очередного обновления навигационной базы данных при запуске программы FliteStar/FliteMap могут увидеть сообщение об ошибке: Сообщение об ошибке "Failed to initialize JIT-EDocs API. (-7019) Unknown error" говорит, что программа не может инициализировать JIT-EDocs API.




      Проверка сроков действия НБД Jeppesen в EFB
      Проверка сроков действия НБД Jeppesen в EFB

      Не смотря на информацию в статье "Срок действия баз данных Jeppesen для EFB" у некоторых товарищей периодически возникают вопросы относительно актуальности баз данных Jeppesen в программах EFB. С одной стороны, их вопросы вполне логичны, так как интерфейс программы Jeppesen FD PRO все еще не идеален, и некоторые моменты весьма не однозначны для пользователей. Например, если открыть в приложении Jeppesen FD PRO страницу Updates, то можно увидеть, что...



Яндекс.Метрика
Сайт работает на быстром VPS/VDS хостинге от FASTVPS