文章转载只能用于非商业性质,且不能带有虚拟货币、积分、注册等附加条件。转载须注明出处http://blog.csdn.net/flowingflying以及作者@恺风Wei。
发Email不属于Telephony API,但作为常用通信的方式,也在此提及。Android通过intent调用Email App应用的方式进行短信发送。如果我们开发办公软件,Email还是常用的功能。代码例子如下:
private void sendEmailTest(){
Intent emailIntent = new Intent(Intent.ACTION_SEND);
String subject = "Hi!";
String body = "Hello from android...";
String[] extra = new String[]{"aaa@xxx.com","bbb@yyy.com"};
emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(Intent.EXTRA_TEXT, body);
emailIntent.putExtra(Intent.EXTRA_EMAIL, extra);
emailIntent.setType("message/rfc822");
startActivity(emailIntent);
}
发送邮件有Intent.ACTION_SENDTO,Intent.ACTION_SEND和Intent.ACTION_SEND_MULTIPUL。他们所携带Email的参数会有所不同。下面是ACTION_SENDTO的例子:
Intent emailIntent = new Intent(Intent.ACTION_SENDTO);
String subject = "Hi!";
String body = "Hello from android...";
emailIntent.setData(Uri.parse("mailto:abcd@qq.com"));
emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(Intent.EXTRA_TEXT, body);
startActivity(emailIntent);
ACTION_SENDTO不携带附件,ACTION_SEND可携带一个附件,ACTION_SEND_MULTIPUL可以携带多个附件。但是无论使用哪种方式,最终都会调用Email APP的,用户都可以在Email App中添加自己所需要的附件。详细的可以阅读http://www.2cto.com/kf/201209/153859.html。
常用的参数还有Intent.EXTRA_CC和Intent.EXTRA_BCC。对于ACTION_SEND,携带附件的方式如下:
emailIntent.putExtra(Intent.EXTRA_STREAM,Uri.fromFile(new File(myFileName)));
小例子代码在:Pro Android学习:telephony小例子
相关链接:我的Android开发相关文章