В любом iOS-приложении легко можно реализовать отправку данных по e-mail.
Для этого нужно сделать следующее:
1. Импортировать библиотеку MessageUI:
import MessageUI
2. Подписаться на протокол MFMailComposeViewControllerDelegate:
class FirstViewController: UIViewController, MFMailComposeViewControllerDelegate{
Проще говоря, добавить их в нужный ViewController, получится так:
import UIKit
import MessageUI
class FirstViewController: UIViewController, MFMailComposeViewControllerDelegate {
3. Добавить следующий код отправки:
@IBActionfuncsendEmail(_sender: Any) {
ifMFMailComposeViewController.canSendMail() {
letmail = MFMailComposeViewController()
mail.mailComposeDelegate= self
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) должен быть настроен хотя бы один почтовый ящик.
Если в процессе тестирования API необходимо сохранять из POSTMAN результаты запросов, в том числе headers в виде текста, но можно это делать с помощью консоли Postman (если вариант со скриншотами не подходит по какой-то причине :).
Я не часто создаю промокоды, а еще реже ими пользуюсь сам и поэтому каждый раз забываю - куда код вставлять, чтобы использовать, хорошо, что у меня есть эта шпаргалка :)
Не смотря на тесную дружбу Jeppesen и Garmin, программы и файлы этих разных производителей, увы, не дружат. И пользователям приходится ломать голову, над той или иной задачей, которая подразумевает использование файлов одного типа в программах другого типа. Например, может возникнуть необходимость отобразить какой-либо GPS-трек, записанный с помощью навигатора Garmin, на карте в программе...
Многие современные гаджеты имеют встроенную фото/видео камеру (а то и даже две): планшеты, видео регистраторы, мобильные телефоны... Последние по причине очень широкого распространения довольно часто используются владельцами в качестве средства фото или видеофиксации. Причем, зачастую совершенно не задумываясь над итогом, держат мобильный телефон так, как удобнее, а не так, как нужно для...
В школе на информатике в 9 классе детям преподают Python! Вообще, это классно и лучше всяких бейсиков, фортранов и паскалей. Главное, чтобы преподаватель мог хорошо объяснить и заинтересовать детей в программировании. Соответственно, родителям приходится разбираться с домашними и самостоятельными работами по программированию:)
Пользователи, на компьютерах (ноутбуках) которых установлены программы Jeppesen FliteStar/FliteMap и Jepp View иногда после очередного обновления навигационной базы данных при запуске программы FliteStar/FliteMap могут увидеть сообщение об ошибке: Сообщение об ошибке "Failed to initialize JIT-EDocs API. (-7019) Unknown error" говорит, что программа не может инициализировать JIT-EDocs API.
Не смотря на информацию в статье "Срок действия баз данных Jeppesen для EFB" у некоторых товарищей периодически возникают вопросы относительно актуальности баз данных Jeppesen в программах EFB. С одной стороны, их вопросы вполне логичны, так как интерфейс программы Jeppesen FD PRO все еще не идеален, и некоторые моменты весьма не однозначны для пользователей. Например, если открыть в приложении Jeppesen FD PRO страницу Updates, то можно увидеть, что...