关于Android发送邮件
来源:互联网 发布:京东内部下单软件 编辑:程序博客网 时间:2024/05/01 04:53
Google 在发表 Android 手机平台时,强调的是超强大的网络支持能力,因此,无论通过 GPRS、3G的电信网络或者是Wifi的无线WLAN网络,都能够发EMAIL。
发送邮件中使用的Intent 行为为 android.content.Intent.ACTION_SEND。实际上在 Android 上使用的邮件发送服务是调用Gmail程序,而非直接使用SMTP的Protocol 。现在介绍本篇需要使用到的功能清单:
•验证用户输入是否为正确的邮箱格式;
•用户可以先把手动输入邮箱,也可以长按邮箱文本框跳到联系人那里找到联系人,得到联系人的邮箱,后返回;
•发送邮件。
•邮件发送程序并不复杂,主要是在 EditText 、Button 控件的构建,通过构造一个自定义的 Intent(android.content.Intent.ACTION_SEND)作为传送 Email 的 Activity 之用,在该Intent中,还必须使用setType()来决定 Email的格式,使用putExtra()来置入寄件入(EXTRA_EMAIL)、主题(EXTRA_SUBJECT)、邮件内容(EXTRA_TEXT)以及其他Email的字段(EXTRA_BCC、EXTRA_CC)。代码如下:
myButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent mailIntent=new Intent(android.content.Intent.ACTION_SEND); mailIntent.setType("plain/test"); strEmailReciver=new String[]{ myEditText.getText().toString() }; strEmailCC=new String[]{myEditText2.getText().toString()}; strEmailSubject=myEditText3.getText().toString(); strEmailBody=myEditText4.getText().toString(); mailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, strEmailReciver); mailIntent.putExtra(android.content.Intent.EXTRA_CC, strEmailCC); mailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, strEmailSubject); mailIntent.putExtra(android.content.Intent.EXTRA_TEXT, strEmailBody); startActivity(Intent.createChooser(mailIntent, getResources().getString(R.string.send))); } });
在Android中发送Email有许多种写法,本篇例子只是其中之一。下面把其他的方法共享给大家:
•方法二
Uri uri=Uri.parse("mailto:terryyhl@gmail.com");
Intent MymailIntent=new Intent(Intent.ACTION_SEND,uri);
startActivity(MymailIntent);
•方法三
Intent testintent=new Intent(Intent.ACTION_SEND);
String[] tos={"terryyhl@gmail.com"};
String[] ccs={"kalaicheng@hotmail.com"};
testintent.putExtra(Intent.EXTRA_EMAIL, tos);
testintent.putExtra(Intent.EXTRA_CC, ccs);
testintent.putExtra(Intent.EXTRA_TEXT, "这是内容");
testintent.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
testintent.setType("message/rfc822");
startActivity(Intent.createChooser(testintent, "发送"));
•方法四
传附件,这里以SD卡的音乐文件为例
Intent testN=new Intent(Intent.ACTION_SEND);
testN.putExtra(Intent.EXTRA_SUBJECT, "标题");
testN.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/music.mp3");
startActivity(Intent.createChooser(testN, "发送"));
•使用javamail。这里我就不介绍javamail的实现方法了。
•由于目前模拟器未内置Gmail Client端程序,因此发送Email程序在送出数据后,模拟器上会发出 “No Application can perform this action”,本人没有Android手机,故无法测试,还请有Android手机的园友能够在测试后,将结果反馈给我,谢谢。
作者“软件技术分享”
- 关于Android发送邮件
- 关于Android发送邮件
- 关于Android发送邮件
- 关于Android发送邮件
- 关于Android发送邮件
- 关于.net发送邮件
- 关于邮箱发送邮件
- Android 发送邮件
- Android发送邮件
- android实现发送邮件
- Android 之 发送邮件
- android 发送邮件,信息
- android 发送邮件
- Android邮件发送详解
- Android邮件发送详解
- android 发送邮件代码
- Android中发送邮件
- android javamail发送邮件
- C++设计模式实现--建造者
- C语言指针5分钟教程
- 树形结构的数据库表Schema设计-基于左右值编码
- VC++编译错误信息
- android中用Spannable在TextView中设置超链接、颜色、字体
- 关于Android发送邮件
- jms activeMQ与spring集成进阶篇
- xmemcached
- 如何使用github
- 微软发布安全通报2847140
- 使用Spread Studio for .NET如何选择工作表
- Kestrel持久化队列服务器
- Suse Linux下内存使用率精细解读
- menuconfig---Unable to find the Ncurses libraries问题解决