В любом 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)
Поделитесь своим местоположением

      Henry Emery & Andy Roberts - Aviation English
      Henry Emery & Andy Roberts - Aviation English

      Aviation English by Henry Emery & Andy Roberts - новый курс английского языка, предназначенный для подготовки летных специалистов (пилотов, борт-радистов, штурманов и авиадиспетчеров) к 4-му уровню владения английским языком по шкале ИКАО. Материал Aviation English by Henry Emery & Andy Roberts отвечает всем требованиям, предъявляемым к языковой подготовке авиаперсонала (DOC 9825 ИКАО – «ICAO...




      Москва и Ульяновск. Разница во времени
      Москва и Ульяновск. Разница во времени

      Помню, что в 80-тых годах время в Ульяновске отличалось от московского на 1 час и соответствовало самарскому времени. Потом в 1989 году в Ульяновске сделали московское время. И все жили в унисон с Москвой, и было это удобно, в принципе. Но нашлись умники, которые стали ныть, что их утром по утрам солнце слишком рано будит, а вечером, якобы, темнеет слишком быстро, и надо это все срочно исправить в целях...




      Настройка статического IP-адреса на Linux Debian 9
      Настройка статического IP-адреса на Linux Debian 9

      Иногда необходимо самостоятельно изменить IP-адрес сервера. Все мануалы и "полезные статьи" в интернете указывают, что нужно всего-то внести изменения в файл сетевых настроек: etc/network/interfaces Но нигде это не написано главного, и все статьи в интернете не принимают в расчет конкретный номер версии операционной системы Debian и разные варианты реализации сетей!




      Как распознать музыку
      Как распознать музыку

      Бывает, услышишь мелодию и сразу хочется узнать, что это за композиция, кто автор, кто исполнитель этого шедевра??? К сожалению иногда играть в игру "Угадай мелодию" довольно сложно - за 2000 с лишним лет люди придумали столько песен, столько мелодий..., что все запомнить ну просто не реально. Тем более, что многие из них, особенно попсовые иногда очень похожи.




      Скопировать или переместить файлы из этой зоны?
      Скопировать или переместить файлы из этой зоны?

      Дано: компьютер с операционной системой Windows XP SP3 в корпоративной сети, построенной на Novell, несколько сетевых дисков, на которые даны права на запись/чтение. Встроенный браузер Internet Explorer - версии 7.... с чем-то. Неудобство: при копировании с/на любой сетевой диск проводник выдает сообщение: "Скопировать или переместить файлы из этой зоны?", в результате, пользователю каждый раз приходится дополнительно...




      Ограничения для UITextField на ввод текста
      Ограничения для UITextField на ввод текста

      Для того, чтобы пользователи приложения не тыкали своими шаловливыми ручками куда попало не могли вводить заведомо не корректный текст, можно реализовать ряд ограничений для них. На сайтах обычно это реализуется с помощью JS-скриптов, которые, теоретически, могут быть оключены пользователем на глобальном уровне, и все ограничения, реализованные с помощью JS перестанут действовать. В...




      Вирус в браузере Safari
      Вирус в браузере Safari

      Не смотря на то, что операционная система Apple - iOS не боится вирусов, некоторые наиболее активные злоумышленники все равно стараются и создают хитрых вредных зверьков (вирусы и прочие неприятные скрипты). И в некоторых редких случаях при посещении определенных сайтов (которые "для взрослых" или просто взломаны и заражены) даже на планшете iPad можно подхватить какую-нибудь бяку.



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