0
点赞
收藏
分享

微信扫一扫

Pro Android学习笔记(一二二):Telephony API(4):发Email

我阿霆哥 2023-04-10 阅读 27


作者@恺风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小例子


举报

相关推荐

0 条评论