跳转到发送短信页面

Uri smsToUri = Uri.parse("smsto://10086");
Intent mIntent = new Intent( android.content.Intent.ACTION_SENDTO, smsToUri );
startActivity( mIntent );

我们都知道,在Android中调用其他程序进行相关处理,几乎都是使用的Intent,所以,Email也不例外。

在Android中,调用Email有三种类型的Intent: 
Intent.ACTION_SENDTO 无附件的发送 
Intent.ACTION_SEND 带附件的发送 
Intent.ACTION_SEND_MULTIPLE 带有多附件的发送

当然,所谓的调用Email,只是说Email可以接收Intent并做这些事情,可能也有其他的应用程序实现了相关功能,所以在执行的时候,会出现选择框进行选择。

1.使用SENTTO发送 
[java]

复制代码代码如下:
Intent data=new Intent(Intent.ACTION_SENDTO);  data.setData(Uri.parse("mailto:way.ping.li@gmail.com"));  data.putExtra(Intent.EXTRA_SUBJECT, "这是标题");  data.putExtra(Intent.EXTRA_TEXT, "这是内容");  startActivity(data); 
Intent data=new Intent(Intent.ACTION_SENDTO);  data.setData(Uri.parse("mailto:way.ping.li@gmail.com"));  data.putExtra(Intent.EXTRA_SUBJECT, "这是标题");  data.putExtra(Intent.EXTRA_TEXT, "这是内容");  startActivity(data); 

通过向Intent中putExtra来设定邮件的相关参数。

2.使用SEND发送 
[java]

复制代码代码如下:
Intent intent = new Intent(Intent.ACTION_SEND);  String[] tos = { "way.ping.li@gmail.com" };  String[] ccs = { "way.ping.li@gmail.com" };  String[] bccs = {"way.ping.li@gmail.com"};  intent.putExtra(Intent.EXTRA_EMAIL, tos);  intent.putExtra(Intent.EXTRA_CC, ccs);  intent.putExtra(Intent.EXTRA_BCC, bccs);  intent.putExtra(Intent.EXTRA_TEXT, "body");  intent.putExtra(Intent.EXTRA_SUBJECT, "subject"); 
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///mnt/sdcard/a.jpg"));  intent.setType("image/*");  intent.setType("message/rfc882");  Intent.createChooser(intent, "Choose Email Client");  startActivity(intent); 
Intent intent = new Intent(Intent.ACTION_SEND);  String[] tos = { "way.ping.li@gmail.com" };  String[] ccs = { "way.ping.li@gmail.com" };  String[] bccs = {"way.ping.li@gmail.com"};  intent.putExtra(Intent.EXTRA_EMAIL, tos);  intent.putExtra(Intent.EXTRA_CC, ccs);  intent.putExtra(Intent.EXTRA_BCC, bccs);  intent.putExtra(Intent.EXTRA_TEXT, "body");  intent.putExtra(Intent.EXTRA_SUBJECT, "subject"); 
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///mnt/sdcard/a.jpg"));  intent.setType("image/*");  intent.setType("message/rfc882");  Intent.createChooser(intent, "Choose Email Client");  startActivity(intent); 

很简单,发送邮件中,有收件者,抄送者,密送者。 也就是分别通过 
Intent.EXTRA_EMAIL, 
Intent.EXTRA_CC, 
Intent.EXTRA_BCC 
来进行putExtra来设定的,而单个附件的发送,则使用Intent.EXTRA_STREAM来设置附件的地址Uri。

3.使用SEND_MULTIPLE来进行多附件的发送 
[java]

复制代码代码如下:
Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);  String[] tos = { "way.ping.li@gmail.com" };  String[] ccs = { "way.ping.li@gmail.com" };  intent.putExtra(Intent.EXTRA_EMAIL, tos);  intent.putExtra(Intent.EXTRA_CC, ccs);  intent.putExtra(Intent.EXTRA_TEXT, "body");  intent.putExtra(Intent.EXTRA_SUBJECT, "subject"); 
ArrayList<uri> imageUris = new ArrayList<uri>();  imageUris.add(Uri.parse("file:///mnt/sdcard/a.jpg"));  imageUris.add(Uri.parse("file:///mnt/sdcard/b.jpg"));  intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, imageUris);  intent.setType("image/*");  intent.setType("message/rfc882");  Intent.createChooser(intent, "Choose Email Client");  startActivity(intent); 
Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);  String[] tos = { "way.ping.li@gmail.com" };  String[] ccs = { "way.ping.li@gmail.com" };  intent.putExtra(Intent.EXTRA_EMAIL, tos);  intent.putExtra(Intent.EXTRA_CC, ccs);  intent.putExtra(Intent.EXTRA_TEXT, "body");  intent.putExtra(Intent.EXTRA_SUBJECT, "subject"); 
ArrayList<uri> imageUris = new ArrayList<uri>();  imageUris.add(Uri.parse("file:///mnt/sdcard/a.jpg"));  imageUris.add(Uri.parse("file:///mnt/sdcard/b.jpg"));  intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, imageUris);  intent.setType("image/*");  intent.setType("message/rfc882");  Intent.createChooser(intent, "Choose Email Client");  startActivity(intent); 

发送多个附件,最主要的时候,通过putParcelableArrayListExtra将多个附件的Uri地址List设置进去就OK了。其实还是很简单的。

andorid中发送短信页面以及邮件发送的更多相关文章

  1. Android-->发送短信页面实现(短信发送以及群发和从电话本中选择联系人)-----------》2

    分析下怎么写 首先,我们需要一个输入框,可以手动的输入手机号码, 其次,很少有人愿意手动输入,那么我们需要提供一个按钮来给我们的用户选择自己电话本中的联系人(一次可以选择多个即群发) 然后,我们需要一 ...

  2. Android中使用Intent的Action和Data属性实现点击按钮跳转到拨打电话和发送短信

    场景 点击拨打电话按钮,跳转到拨打电话页面 点击发送短信按钮,跳转到发送短信页面 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程 ...

  3. Linux-C实现GPRS模块发送短信

    “GSM模块,是将GSM射频芯片.基带处理芯片.存储器.功放器件等集成在一块线路板上,具有独立的操作系统.GSM射频处理.基带处理并提供标准接口的功能模块.GSM模块根据其提供的数据传输速率又可以分为 ...

  4. Android之发送短信和接收验证码

      最近项目需求需要发送短信和接收验证码并将验证码显示在输入框中 以下是我的记录    前提---权限     <uses-permission android:name="andro ...

  5. Android软件开发之发送短信与系统短信库解析

    今天我和同学们讨论一下Android平台下如何调用系统方法发送短信.接收短信.系统的短信库相关的问题.进入正题,我们先使用Eclipse工具模拟给自己的模拟器发送一条短信.在Eclipse下打开DDM ...

  6. Windows Phone开发(24):启动器与选择器之发送短信

    原文:Windows Phone开发(24):启动器与选择器之发送短信 本节我们通过一个简单的发送短信示例来演示一下如果配合使用PhoneNumberChooserTask和SmsComposeTas ...

  7. Android--发送短信,并且通知发送方

    1.发送短信涉及到权限,我们需要把权限加上 2.当我们发送短信时,不管发送是否成功,接收方是否接收到,系统都会发送广播 3.这时我们注册广播去接收一下就可以了 4.布局文件很简单,里面就两个EditT ...

  8. phoneGap的Android下编写phonegap 发送短信插件

    一.前端代码的编写 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...

  9. iOS中发送短信/发送邮件的实现 韩俊强的博客

    需要引入框架: MessageUI.framework 布局如下: 短信和邮件: #import "ViewController.h" #import <MessageUI/ ...

随机推荐

  1. 显示3行,还要省略号(这个属性比较合适WebKit浏览器或移动端(绝大部分是WebKit内核的)浏览器)

    div{ overflow : hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp:; -webkit- ...

  2. MySql授权和撤销权限操作

    MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 用户后面可以加@'ip地址' identified by '密码' 例如: ' ' 上面的语句表示将 ...

  3. 【DirectX SDK Extra】提示缺少Qedit.h问题 (转)

    原文转自 http://blog.csdn.net/joeblackzqq/article/details/10944005 DirectX 9.0 SDK 开发包以及扩展包下载(February 2 ...

  4. Android系统启动过程【转】

    转自:http://www.cnblogs.com/bastard/archive/2012/08/28/2660389.html Android系统启动过程 首先Android框架架构图:(来自网上 ...

  5. idea 快速生成代码的快捷键

     psvm 加ab键   mian方法快速生成 sout 加tab键   输出打印快捷键  alt+insert      快速生成get  set 方法 itar 生成array for代码块 fo ...

  6. LeetCode OJ--Sum Root to Leaf Numbers

    https://oj.leetcode.com/problems/sum-root-to-leaf-numbers/ 给一棵树,找从根到叶的路径,并把路径上的数相加,求和. 树的深度优先搜索 /** ...

  7. android实现多条件筛选列表菜单筛选菜单

    封装组合控件实现一个简单的多条件筛选菜单,可根据自己需求定制筛选条件,动态添加筛选项,灵活使用. 控件封装,点击切换,使用popupWindow实现下拉列表,项目中封装了多种数组数据排序处理方法的工具 ...

  8. 慎用lodash的cloneDeep函数

    lodash的cloneDeep函数能够很方便的拷贝对象,但是一旦拷贝一些很复杂的对象就有可能报错.比如用cloneDeep克隆一个vue实例,就有可能包key.charAt is not a Fun ...

  9. Algorithm | hash

    A basic requirement is that the function should provide a uniform distribution of hash values. A non ...

  10. char可不可以存汉字

    常见的面试题:char类型的变量可不可以存汉字 答案是可以的,char类型中存储的是Unicode编码,Unicode编码中是存在存在中文的,所以Char自然可以存储汉字,但是!仅限于Unicode中 ...