使用React Native iOS发送电子邮件

时间:2016-03-26 11:31:19

标签: ios email reactjs react-native

我需要能够使用本机发送电子邮件。

用户将文本数据输入到表单中并按下提交按钮,然后将文本复制到新的电子邮件中并发送到我可以查看数据的地址。它将始终发送到同一地址。

基本上我需要的是从应用程序内发送电子邮件,而发件人和收件人地址对每个用户保持不变。 (不能由用户或任何东西选择)

我已经找到了各种模块似乎能够做到这一点,但到目前为止还没有人使用反应本地(即https://nodemailer.com

我不需要的是iOS弹出的标准电子邮件提示(如本模块https://www.npmjs.com/package/react-native-communications中所述)。 它应始终在后台完成,用户甚至不知道已发送电子邮件,只是确认数据已被提交。

2 个答案:

答案 0 :(得分:2)

不幸的是,iOS默认情况下不支持在后台邮件。

您可以做的是 - 使用您需要的数据向您的后端发出XHR请求,并在服务器上处理邮件过程。

可能你会在这里找到更多方便的信息:

UPD:您也可以尝试直接使用iphone smtp client library。这意味着您需要创建一个反应原生模块,将SMTP功能桥接到JS部分。但是在这里你需要在代码中存储一些私有凭证,这使得它们容易受到逆向工程的攻击。<​​/ p>

答案 1 :(得分:0)

我刚刚创建了一个npm程序包,该程序包允许将用户发送到另一个电子邮件应用程序。

https://github.com/ErickMaeda/react-native-email-action

它易于安装,并且不需要链接任何本机代码。

安装:

<div class="linkTabBl" style="float:left;padding-top:6px;width:240px"> Anglo American plc <br> 20 Carlton House Terrace <br> SW1Y 5AN London <br> United Kingdom <br><br> Phone : +44 (0)20 7968 8888 <br> Fax : +44 (0)20 7968 8500 <br> Internet : <a class="pageprofil_link_blue" href="http://www.angloamerican.com" target="_blank"> http://www.angloamerican.com </a> <br> </div>

用法

npm install --save react-native-email-action

重要

在iOS 9+之后,您需要在Info.plist上添加此信息键

import { sendEmail } from 'react-native-email-action';

const options = {
  to: "erick.maeda26@gmail.com", 
  subject: "Very important!", 
  body: "Verify your email fast!"
};
sendMail(options);