2013-05-26 54 views
3

我正在制作一个基本的用户输入反馈表单的Android应用程序,最后还有一个提交按钮。首先,我不知道如何使按钮处于活动状态,但我也想对其进行格式化,以便他们给出的人员名称是它发送给我的电子邮件的主题。我基本上希望他们输入的信息以电子邮件的形式发给我,我很困惑如何实现这一点。谢谢!如何将Android反馈表单作为电子邮件提交?

+1

我仍然无法找到如何正确实施这个没有错误... – coltsfan95

+0

什么不适用于@ melvkim的解决方案? – Ahmad

+0

@Ahmad也许这样做了,但我不能让它在我的代码中工作。我不知道我是不是把它放在正确的位置,或者是什么,但我甚至无法让onclick的听众很好地倾听。我也不确定是否要在他的代码中填写某些内容? (我自己的变量等) – coltsfan95

回答

0

步骤1)采取的形式数据

步骤2)整理表单数据

步骤3)组织的意图,并通过在各自的额外为自己的内容(读取。意向的文档。 SEND_TO)

完成这一切后,您将获得结果。

+0

我已经设置了它,以便可以输入信息,但我对Intent.SEND_TO的工作方式感到困惑。我可以将它们的输入声明为一个字符串,然后将这些字符串分配给电子邮件的不同组件? – coltsfan95

+0

**与SEND_TO相关的意图附加组件的不同**组件。 – JoxTraex

4

假设你有一个名为ButtonmBtnFeedback“FeedbackActivity.java”,你可以动态地添加以下注册基本的反馈功能:

mBtnFeedback.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       String to = textTo.getText().toString(); 
       String message = textMessage.getText().toString(); 
       String subject = textSubject.getText().toString(); 

       Intent mEmail = new Intent(Intent.ACTION_SEND); 
       mEmail.putExtra(Intent.EXTRA_EMAIL, new String[]{ to}); 
       mEmail.putExtra(Intent.EXTRA_SUBJECT, subject); 
       mEmail.putExtra(Intent.EXTRA_TEXT, message); 

       // prompts to choose email client 
       mEmail.setType("message/rfc822"); 

       startActivity(Intent.createChooser(mEmail, "Choose an email client to send your feedback!")); 

      } 
     }); 

更多有关rfc822,请参阅this维基百科页面。

+0

有没有办法做到这一点,而无需打开外部电子邮件客户端? – coltsfan95

+0

@ coltsfan95您必须创建处理其他任务的其他活动,包括设置协议(例如smtp),端口,密码验证等。或者,您可以导入[javamail-android](https://code.google.com/p/javamail-android /)作为类lib到您的项目并使用其API。 – melvynkim

+0

好的,所以如果我这样做,你提供的多少是占位符?我得到很多错误 – coltsfan95

0

我是一位寻求Google/Android帮助的Android手机用户,以克服电信公司和第三方在电信公司允许的情况下发送的手机垃圾短信(SMS & mms)威胁。 Android中的当前垃圾邮件过滤功能只能在移动电话号码用于发送垃圾邮件后才能阻止移动电话号码(不是字母类型的简码)。

它不会阻止第三方垃圾邮件发送者注册新的SIM卡,也不会阻止电信公司使用字母短码发送垃圾邮件。

我对如何改变Android的垃圾邮件过滤功能有一个想法(新方法),它会使第三方垃圾邮件发送者无法注册新的SIM卡来发送垃圾邮件,并阻止电信公司使用字母型短消息发送垃圾邮件。

请给我Google/Android中合适人员的电子邮件地址,以便我解释我对改进Android垃圾邮件过滤功能的想法或将此电子邮件转发给该人并要求他/她与我联系。

+1

@JamesAMohler你为什么编辑这篇文章?这不是问题的答案,因此应该删除。通过编辑帖子,您已将其踢出审阅队列 - ** [请参阅此处](http://stackoverflow.com/review/low-quality-posts/15241284)**。请将答案标记为非答案,以便可以再次审查。谢谢。 – Pang