Я хочу отправить электронную почту через Gmail или другие клиенты сообщений, возможно ли это в iOS. Я много искал, но ничего не нашел. Я не хочу использовать композитор по умолчанию для отправки почты. Я хочу, чтобы пользователь выбирал, хотят ли они отправлять электронные письма из mfmailcomposeviewcontroll по умолчанию или могут отправлять через gmail, yahoo.
Можем ли мы отправлять электронную почту через клиенты gmail или yahoo в iPhone sdk
Ответы (1)
Есть несколько способов, которыми сторонние разработчики могут предложить эту функциональность — независимо от выбранного способа, сторонний поставщик должен решить, насколько (если таковые имеются) эти методы реализованы и задокументированы в открытом доступе. домен как доступный для других приложений или пользователей. В конечном итоге вам нужно будет обратиться к документации целевого продукта или каналам поддержки, чтобы определить, существуют ли такие механизмы. Хотя это не исчерпывающий список и не список официально поддерживаемых механизмов для достижения вашей цели, он должен дать вам некоторое представление о том, что следует изучить или задать дополнительные вопросы:
Вариант 1. Открытые схемы URL Разработчики iOS могут регистрировать свои приложения, чтобы они отвечали на схемы URL, такие как «tel://», «sms://» или «http://». Если поставщики зарегистрируют схему URL-адресов, она будет отображаться в файле info.plist приложения. Хотя это не говорит о формате каких-либо параметров, которые вам нужно передать, документация поставщика или персонал службы поддержки могут пролить свет на эти возможности. Для схемы HTTP MobileSafari.app iOS зарегистрирован для ответа — правильно сформированный NSURL, который передается в Safari, используется в качестве URL-адреса, по которому Safari переходит при запуске.
Вариант 2. Сторонний SDK. Другие поставщики могут предоставить SDK, который вы сможете внедрить в свое приложение. Google Drive, Dropbox и Facebook — отличные примеры. Чтобы включить эти облачные файловые системы или социальные возможности в свои собственные приложения, вы можете зарегистрироваться в качестве разработчика и следовать руководствам по установке, чтобы принять их SDK и использовать функциональные возможности, предоставляемые SDK.
Что касается вашего конкретного вопроса, похоже, что официальное приложение Google Gmail имеет недокументированную схему URL-адресов, которую сообщество обнаружило, реконструировало и записало. Хотя я НАСТОЯТЕЛЬНО НЕ РЕКОМЕНДУЮ использовать недокументированные возможности приложений, ничто не мешает вам использовать эти функции. Имейте в виду, что, поскольку это не задокументировано, существует явная вероятность того, что эта функция может быть удалена, изменена или иным образом сделана недоступной в будущих сборках, что может привести к тому, что ваше собственное приложение будет немного затруднено. Кроме того, те из ваших пользователей, у которых не установлено приложение Gmail, не смогут использовать эту схему URL-адресов, что может привести к ухудшению взаимодействия с пользователем. При всем при этом, с указанными выше предостережениями, Том Скотланд написал серию сообщений в блоге о схеме URL-адресов приложения Gmail и обновлениях схемы в зависимости от остальных приложений Google для iOS — http://tom.scogland.com/blog/2013/01/29/gmail-url-scheme/
Yahoo Mail — это отдельная проблема. Насколько я могу судить, это приложение не предлагает ни один из этих вариантов доступа, однако я оставлю копание в качестве упражнения для OP.
Опять же, я призываю вас использовать MFMailComposerViewController вместо неофициальных или неутвержденных возможностей приложения, чтобы ограничить подверженность вашего собственного приложения изменениям, не зависящим от вас.