Android:将用户提供的信息发送到私人电子邮件

时间:2016-07-22 16:36:01

标签: java android

如何从Android应用程序获取用户提供的信息(例如产品反馈)以发送到私人电子邮件帐户?

我目前正在运营一个网站,我们想开发一个Android应用程序,允许用户输入产品反馈。我们希望这些反馈能够以某些人只能访问的方式发送或存储。它不一定要发送到电子邮件,它只需要是私人的。我们只是希望产品反馈可供我们审核和评论。

我有什么地方可以开始考虑这个吗?

1 个答案:

答案 0 :(得分:1)

假设您的布局文件中有一个EditText,您可以在此活动中获得这样的文本,其中et_some_user_input是布局文件中EditText的ID。

EditText etSomeUserInput = (EditText)findViewById(R.id.et_some_user_input);
String someUserInput      =  etSomeUserInput.getText().toString();

现在您在someUserInput中有用户输入,您可以像这样发送此字符串:

Intent i = new Intent(Intent.ACTION_SEND);
i.setType("message/rfc822");
i.putExtra(Intent.EXTRA_EMAIL  , new String[]{"recipient@private.com"});
i.putExtra(Intent.EXTRA_SUBJECT, "subject of email");
i.putExtra(Intent.EXTRA_TEXT   , someUserInput);
try {
    startActivity(Intent.createChooser(i, "Send mail..."));
} catch (android.content.ActivityNotFoundException ex) {
    Toast.makeText(MyActivity.this, "There are no email clients installed.", Toast.LENGTH_SHORT).show();
}

Reference发送电子邮件代码。

这将使用户启动电子邮件客户端,例如谷歌电子邮件,雅虎电子邮件或用户选择的任何其他电子邮件客户端。如果您希望将用户输入发送到您的私人电子邮件或您可以访问的某个地方,而无需通过电子邮件客户端。一个建议是设置一个接受用户消息的服务器,所以在你的Android应用程序中,你可以将此消息发送到你的服务器,你的服务器可以将该消息保存到某种数据库,然后你可以设置一个管理员网站应用程序连接到该数据库以查看用户提交的内容,或者您​​可以直接查询该数据库。

如果你不确定我在说什么,你需要做一些研究

如何设置服务器以接受Java,PHP,Ruby,Python中的REST服务调用, Node.js或您喜欢的任何编程语言?

如何在Android中进行REST服务调用?

如果您没有足够的资源来设置服务器,那么您可以尝试向互联网询问是否可以在Android中发送电子邮件而无需通过电子邮件客户端。