在Android开发过程中,相信你对Intent这个东西并不陌生,它的作用非常广泛,可以用来传递广播,启动另一个Activity,甚至启动另一个应用程序,注意,有一点非常重要,就是可以在一个应用程序只用启动另一个应用程序,这里使用到的东西就是Intent。

Intent有几个非常重要的部分:

1.Component name--组件名,用于指定所要打开的另一个Activity

2.Action--这是指定Intent的动作,即希望这个Intent做什么

3.Data--为Intent添加数据,这个数据是一个URI类型的值

4.Extras--这是希望在Intent中添加的附加值,是以键值对的方式存储的

下面作者以一个例子应用Intent实现启动另一个Activity,调用打电话和发送短信的内置应用程序:

public class MainActivity extends Activity {private Button button1;private Button button2;private Button button3;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button1=(Button)findViewById(R.id.button1);button2=(Button)findViewById(R.id.button2);button3=(Button)findViewById(R.id.button3);button1.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubfinal Intent intent=new Intent(MainActivity.this, OtherActivity.class);startActivity(intent);}});button2.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent=new Intent();/*要执行的动作*/intent.setAction("android.intent.action.CALL");//绑定数据intent.setData(Uri.parse("tel:"+"123456789"));//激活打电话组件 通过隐式意图 另外不要忘记在清单文件中注册一下打电话的权限startActivity(intent);}});button3.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubUri uri=Uri.parse("smsto:987654321");Intent intent=new Intent(Intent.ACTION_SENDTO,uri);intent.putExtra("sms_body", "This is SMS text!!!");startActivity(intent);}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.activity_main, menu);return true;}}

程序运行的效果如图所示

Activity和Intent,打电话,发送短信相关推荐

  1. android 实现发送短信功能以及解决权限问题

    1.创建项目,新建Activity 2.sendSmsActivity.java package com.otis.ui;import androidx.appcompat.app.AppCompat ...

  2. SIM800C通过串口AT指令拨打电话与发送短信

    目录 一.更新时间 二.相关器件 三.硬件连接 四.现象与事件 五.具体操作: 5.1 准备工作(查询器件是否正常) 5.2 拨打电话 5.3 发送短信 5.3.1 短信消息模式为文本模式 5.3.2 ...

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

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

  4. 使用Android studio实现打电话和发送短信的功能

    知识点 1:安卓6.0以上的版本如何获取拨打电话和发送短信的"权限" 2.如何进入手机通讯录并返回联系号码 3.如何实现发送短信的功能 //实现拨打电话功能的Activity pa ...

  5. Android使用Intent发送短信SMS

    SMS全称为短讯服务(Short Messaging Service) 两种发送短信方式: 方法一.使用Intent发送短信 Intent smsIntent = new Intent();smsIn ...

  6. android 发短信意图,android代码实现打电话和发送短信功能

    android代码实现打电话和发送短信功能 发布时间:2020-05-27 11:57:17 来源:亿速云 阅读:172 作者:鸽子 1.XML布局 xmlns:app="http://sc ...

  7. android 发送短信 广播 demo,向Android模拟器打电话发短信的简单方法

    在开发android应用程序时,有时候需要测试一下向android手机拨打电话发送短信时该应用程序的反应.譬如编写一个广播接收器,来提示用户有短信收到或者处理短信,就需要向该手机发送短信来进行测试.这 ...

  8. (4)用接口完成下面的任务。 1)定义一个手机(MobilePhone)接口,它有打电话(call)、接电话(receive)、发送短信(sendMsg)、接受短信(receiveMsg)的功能。 2

    (4)用接口完成下面的任务. 1)定义一个手机(MobilePhone)接口,它有打电话(call).接电话(receive).发送短信(sendMsg).接受短信(receiveMsg)的功能. 2 ...

  9. 安卓开发中发送短信的方法 APP内单发短信 群发短信 APP跳转到短信页 单条短信 多条短信Intent跳转

    1.APP内部直接发送短息 包括发送单条短信 发送多条短信 APP内部发送短信首先要获取一个发送短信的权限 <uses-permission android:name="android ...

最新文章

  1. python高级-模块(14)
  2. 【mongo】centos6.9安装mongo2.6.3
  3. 【Flask】SQLALchemy的介绍
  4. PhpStorm 快捷键大全
  5. R语言与非参数检验之两独立样本中位数检验
  6. mongodb的id的唯一性_mongodb中的objectid是collection中唯一,还是全db唯一,还是全宇宙唯一?...
  7. 软件结构B/S和C/S
  8. html 的layer的属性,layer属性
  9. 第 4 章 MybatisPlus 条件构造器
  10. python入门教程 非常详细-Python编程入门教程:从入门到高级,非常详细
  11. 原生ES-Module在浏览器中的尝试
  12. MyBatis generator 注解方式和xml方式
  13. Linux停服务器命令,使用linux的shutdown命令关闭服务器
  14. 使用Matplotlib美化和修饰图形
  15. Pygame实战:牛,几千行代码实现《机甲闯关冒险游戏》,太牛了(保存起来慢慢学)
  16. 调整外接显示屏亮度的方法
  17. no algorithm found for: 08000000h - 0800275bhno algorithm found for: 08000000h - XXXXXXXXH
  18. 币种对应的转换因子(处理日元台币…
  19. [CF538H]Summer Dichotomy
  20. 为什么别人在微信卖东西不会被人拉黑

热门文章

  1. 【jQuery Demo】图片瀑布流实现
  2. Wcf 基础教程 服务寄宿之 Windows 服务寄宿
  3. Ajax 网页异步调用
  4. 一个Portal处理流程
  5. c#判断右键菜单(ContextMenuStrip)是从哪个控件弹出来的方法
  6. 面试那点小事,你从未见过的spring boot面试集锦(附详细答案)
  7. 排查一般MySQL性能问题
  8. CentOS下安装JDK的三种方法
  9. 《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一导读
  10. 树状数组(Binary Indexed Tree) 总结