中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第5章 Android组件通信

第5章Android组件通信 杨刚 中国人民大学
杨刚 中国人民大学 第5章 Android组件通信

本章学习目标 ·了解使用Intent进行组件通信的原理 ·掌握使用Intent后动Activity的方法 ■掌握获取Activity返回值的方法 m了解Intenti过滤器的原理与匹配机制
本章学习目标 n 了解使用Intent进行组件通信的原理 n 掌握使用Intent启动Activity的方法 n 掌握获取Activity返回值的方法 n 了解Intent过滤器的原理与匹配机制

5.1 Intent简介 ·在一个Android应用中,主要是由四种组件组 成的 Activity,Intent Receiver,Service,Content Provider 口这四种组件相互独立、可以互相调用,协调工作, 最终组成一个真正的Android应用。 在这些组件之间的通讯中,主要是由Intent协助完 成的 ■应用程序内部、应用程序之间数据通信
5.1 Intent简介 n 在一个Android应用中,主要是由四种组件组 成的 q Activity, Intent Receiver, Service, Content Provider q 这四种组件相互独立、可以互相调用,协调工作, 最终组成一个真正的Android应用。 q 在这些组件之间的通讯中,主要是由Intent协助完 成的 n 应用程序内部、应用程序之间数据通信

5.1 Intent简介 Intent:一种轻量级的消息传递机制 口Intent:意图,目的”,可以理解为不同组件之间通信 的媒介信使”Vhat do you want to do? 口它是一个动作的完整描述,包含了动作的产生组件、接 收组件和传递的数据信息 口Intenti的目的:用于组件之间数据交换 ■Activity、Service和BroadcastReceiver.之间的数据交互 ■后动Activity和Service 口发送广播消息
5.1 Intent简介 n Intent:一种轻量级的消息传递机制 q Intent:“意图,目的” ,可以理解为不同组件之间通信 的“媒介”“信使” What do you want to do? q 它是一个动作的完整᧿述,包含了动作的产生组件、接 收组件和传递的数据信息 q Intent的目的:用于组件之间数据交换 n Activity、Service和BroadcastReceiver之间的数据交互 n 启动Activity和Service q 发送广播消息

5.1 Intent简介 Intent的优点 口使用Intent来传播动作,利于组件之间的分离,允 许无缝地替换应用程序元素。 0 提供了一个简单的用于扩展应用程序功能的模型的 基础架构
5.1 Intent简介 n Intent的优点 q 使用Intent来传播动作,利于组件之间的分离,允 许无缝地替换应用程序元素。 q 提供了一个简单的用于扩展应用程序功能的模型的 基础架构

5.1 Intent简介 ■5.1.1后动Activity 口应用程序一般都有多个Activity,Intent可以实现不同 Activity之间的切换和数据传递 o后动Activity方式 ■显式启动 ▣必须在Intent中指明启动的Activity所在的类 ·隐式启动 口根据Intent的动作和数据来决定启动哪一个Activity 口选择权由Android系统和最终用户来决定
5.1 Intent简介 n 5.1.1 启动Activity q 应用程序一般都有多个Activity,Intent可以实现不同 Activity之间的切换和数据传递 q 启动Activity方式 n 显式启动 q 必须在Intent中指明启动的Activity所在的类 n 隐式启动 q 根据Intent的动作和数据来决定启动哪一个Activity q 选择权由Android系统和最终用户来决定

5.1 Intent简介 ·不同类型的组件有不同的传递ntent方式: 口激活一个新的Activity,或者让一个现有的Activity做新 的操作,可以通过调用Context.startActivity()或者 Activity.startActivityForResult()方法; 口后动一个新的Service,或者向一个已有的Service传递 新的指令,调用Context..startService()方法或者调用 Context..bindService()方法将调用此方法的上下文对象 与Service绑定;
5.1 Intent简介 n 不同类型的组件有不同的传递Intent方式: q 激活一个新的Activity,或者让一个现有的Activity做新 的操作,可以通过调用Context.startActivity()或者 Activity.startActivityForResult()方法; q 启动一个新的Service,或者向一个已有的Service传递 新的指令,调用Context.startService()方法或者调用 Context.bindService()方法将调用此方法的上下文对象 与Service绑定;

5.1 Intent简介 m不同类型的组件有不同的传递ntent方式: 0 Context.sendBroadcast() Context.sendOrderBroadcast() Context.sendStickBroadcast)这三个方法可以发送 Broadcast Intent。.发送之后,所有已注册的并且拥有 与之相匹配IntentFilter的BroadcastReceiver就会被激 活
5.1 Intent简介 n 不同类型的组件有不同的传递Intent方式: q Context.sendBroadcast()、 Context.sendOrderBroadcast()、 Context.sendStickBroadcast()这三个方法可以发送 Broadcast Intent。发送之后,所有已注册的并且拥有 与之相匹配IntentFilter的BroadcastReceiver就会被激 活

5.1 Intent简介 5.1.1后动Activity 显式启动 ·创建一个Intent ■指定当前的应用程序上下文,以及要启动的Activity ■把创建好的Intent作为参数传递给startActivity()方法 Intentintent new Intent(IntentDemo.this,Activity ToStart.class); 2. startActivity(intent); 主要用于同一个应用程序中的Activity切换。在同一个应用程序 内,一般来说,我们通常都知道要后动的Activity具体是哪一 个,因此常用显式的Intent来实现,简单直接
5.1 Intent简介 n 5.1.1 启动Activity q 显式启动 n 创建一个Intent n 指定当前的应用程序上下文,以及要启动的Activity n 把创建好的Intent作为参数传递给startActivity()方法 n 主要用于同一个应用程序中的Activity切换。在同一个应用程序 内,一般来说,我们通常都知道要启动的 Activity 具体是哪一 个,因此常用显式的 Intent 来实现,简单直接。 1. Intent intent = new Intent(IntentDemo.this, ActivityToStart.class); 2. startActivity(intent);

5.1 Intent简介 ■5.1.1后动Activity 口显式启动 ■指定了component属性的Intent(调用 setComponent(ComponentName)setClass(Context, Class)来指定)。通过指定具体的组件类,通知应用启动对应的 组件 ■务必在AndroidManifest..xml文件中注册这两个Activity
5.1 Intent简介 n 5.1.1 启动Activity q 显式启动 n 指定了component属性的Intent(调用 setComponent(ComponentName)或者setClass(Context, Class)来指定)。通过指定具体的组件类,通知应用启动对应的 组件 n 务必在AndroidManifest.xml文件中注册这两个Activity
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)组件通信——消息机制和广播.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第7章 后台服务.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第8章 数据存储与访问.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第9章 位置服务与地图应用.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第10章 Widget组件开发.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(教案讲义)智能移动平台应用开发教学大纲(主讲:杨刚).pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第8章 数据库技术基础.pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第7章 多媒体技术基础.pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第6章 计算机网络基础.pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第5章 演示文稿制作软件PowerPoint 2010.pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第4章 电子表格处理软件Excel 2010.pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第2章 操作系统基础.pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第3章 文字处理软件Word 2010.pdf
- 长沙理工大学:《大学计算机基础》课程教学资源(课件讲稿)第1章 计算机系统基础.pdf
- 《机器学习》课程教学资源(讲稿)主题模型与层次主题模型(Topic Model and Hierarchical Topic Model).pdf
- 《机器学习》课程教学资源(讲稿)对(文本)聚类中一些问题的讨论(Thinking in Clustering).pdf
- 《机器学习》课程教学资源(讲稿)基于上下文的服务推荐 Context-Aware Service Recommendation.pdf
- 《机器学习》课程教学资源(讲稿)自然语言理解、主题建模与基于NN的语言生成 Natural Language Processing, Topic Modeling and Neural Text Generation.pdf
- 《机器学习》课程教学资源(讲稿)推荐系统入门——任务、特征与方法概述(Recommender System).pdf
- 《机器学习》课程教学资源(讲稿)The Structure of an Academic Paper in CS(for Starters).pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第4章 Android用户界面.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)Android应用程序生命周期.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第3章 Android系统框架.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第0章 前言(主讲:杨刚).pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)第1章 Android简介.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)Android系统运行相关.pdf
- 中国人民大学:《移动平台应用开发》课程教学资源(课件讲义)XML简介.pdf
- 私立华联学院:《视频编辑与制作》课程教学资源(教案讲义)教学大纲与课程标准(主讲:崔英敏).pdf
- 《视频编辑与制作》课程教学资源(电子教案)中文版Premiere Pro CC 2018基础培训教程(共九章).pdf
- 江苏省高等学校计算机等级考试大纲(2015年修订,含考试样卷及参考答案).pdf
- 私立华联学院:《html5》课程教学资源(教案讲义)教学大纲.pdf
- 私立华联学院:《html5》课程教学资源(教案讲义)课程标准.pdf
- 私立华联学院:《html5》课程教学资源(教案讲义)电子教案.pdf
- 私立华联学院:《html5》课程教学资源(试卷习题)第1章 初识HTML5_习题.pdf
- 私立华联学院:《html5》课程教学资源(试卷习题)第2章 HTML5页面元素及属性_习题.pdf
- 私立华联学院:《html5》课程教学资源(试卷习题)第3章 CSS3入门_习题.pdf
- 私立华联学院:《html5》课程教学资源(试卷习题)第4章 CSS3选择器_习题.pdf
- 私立华联学院:《html5》课程教学资源(试卷习题)第5章 盒子模型_习题.pdf
- 私立华联学院:《html5》课程教学资源(试卷习题)第6章 浮动与定位_习题.pdf
- 私立华联学院:《html5》课程教学资源(试卷习题)第7章 表单_习题.pdf