Android学习笔记——Intents 和 Intent Filters(二)
本人邮箱:JohnTsai.Work@gmail.com,欢迎交流讨论。
欢迎转载,转载请注明网址:http://www.cnblogs.com/JohnTsai/p/3993488.html
- 知识点:
继续昨天的Intents 和 Intent Filters的学习
- 组成一个Intent(Building an Intent):
Intent 对象携带信息(例如明确的组件名或应该接收intent的组件种类(intent category)),Android系统使用这些
信息决定开启哪个组件。还携带了接收的组件使用的信息,为了完全的执行功能。
Intent包含的基本信息有以下几种:
1.组件名
//1.组件名(Component name)
//目标组件的完全限制类名(fully qualified class name),包括app的包名。
// 例如com.johntsai.SecondActivity
//我们可以使用以下方法设置组件名
setComponent()
setClass()
setClassName()
//或者是Intent构造器
2.功能
//2.功能,活动(Action)
//指定一般要执行的功能或者活动的字符串
//我们可以指定Intent的action,使用以下方法 setAction()
//或是Intent构造器
//如果我们构造自己的action,必须要包括我们app的包名作为前缀
//例如:
static final String ACTION_TIMETRAVEL
="com.johntsai.action.TIMETRAVEL";
3.数据
//3.数据(Data)
//URI(Uri对象)引用数据或MIME类型的数据
//提供的data的类型一般由intent的action决定
//例如action是ACTION_EDIT,那么data就应该包含可编辑的文档的URI
//仅设置data URI
setData()
//仅设置MIME类型
setType()
//两者都设置
setDataAndType()
//提醒:如果你想要设置两者2,不能调用setData()和setType(),因为它们会使对方的数值无效。一般是使用setDataAndType()。
4.种类
//4.种类(Category)
//包含关于哪种组件应该处理Intent的附加信息的字符串
//一个intent可以有任意多个category说明
//指定category
addCategory()
组件名、功能、数据、种类(component name,action,date,category)代表了一个Intent最典型的特点,
通过读取这些属性,Android系统能决定开启哪个组件。
5.附加部分
//5.附加部分(Extras)
//携带需要完成要求功能的附加信息的键值对(Key-value paris)
//声明我们自己的附加部分(我们的app的Intent接收)确保包含我们的应用包名作为前缀
//例如:
static final String EXTRA_GIGAWATTS = "com.johntsai.EXTRA_GIGAWATTS";
6.标志
//6.标志(Flags)
//Flags指导Android系统怎样开启Activity(例如Activity属于哪个task)以及开启后怎样处理它(例如,它是否属于最近的Activity列表中)
setFlags();
如果喜欢,请点推荐。
To be Continued.....
Android学习笔记——Intents 和 Intent Filters(二)的更多相关文章
- Android学习笔记_46_Android的intent之间Object、List、List<Object>和全局变量数据的传递(Parcelable Serializable)
转http://blog.csdn.net/pku_android/article/details/7456305 一.传递List<String>和List<Integer> ...
- 【转】Pro Android学习笔记(十二):了解Intent(下)
解析Intent,寻找匹配Activity 如果给出component名字(包名.类名)是explicit intent,否则是implicit intent.对于explicit intent,关键 ...
- Android开发之旅: Intents和Intent Filters(理论部分)
引言 大部分移动设备平台上的应用程序都运行在他们自己的沙盒中.他们彼此之间互相隔离,并且严格限制应用程序与硬件和原始组件之间的交互. 我们知道交流是多么的重要,作为一个孤岛没有交流的东西,一定毫无意义 ...
- 【转】Pro Android学习笔记(二):开发环境:基础概念、连接真实设备、生命周期
在Android学习笔记(二):安装环境中已经有相应的内容.看看何为新.这是在source网站上的Android架构图,和标准图没有区别,只是这张图颜色好看多了,录之.本笔记主要讲述Android开发 ...
- 6、二、App Components(应用程序组件):1、Intents and Intent Filters(意图和意图过滤器)
1.Intents and Intent Filters(意图和意图过滤器) 1.0.Intents and Intent Filters(意图和意图过滤器) An Intent is a messa ...
- 【转】 Pro Android学习笔记(九二):AsyncTask(1):AsyncTask类
文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn.net/flowingflying/ 在Handler的学习系列中,学习了如何h ...
- 【转】 Pro Android学习笔记(五二):ActionBar(5):list模式
可以在action bar中加入spinner的下来菜单,有关spinner,可以参考Pro Android学习笔记(二十):用户界面和控制(8):GridView和Spinner. list的样式和 ...
- 【转】 Pro Android学习笔记(二二):用户界面和控制(10):自定义Adapter
目录(?)[-] 设计Adapter的布局 代码部分 Activity的代码 MyAdapter的代码数据源和构造函数 MyAdapter的代码实现自定义的adapter MyAdapter的代码继续 ...
- 【转】 Pro Android学习笔记(二十):用户界面和控制(8):GridView和Spinner
目录(?)[-] GridView Spinner GridView GridView是网格状布局,如图所示.在了解ListView后,很容易了解GridView.下面是例子的XML文件. <? ...
随机推荐
- Web基础 HTML CSS JS JQuery AJAX
1. Web基础 网页的骨骼HTML 什么是HTML超文本标记语言:Hyper Text Markup Language 这都不重要,重要的是:HTML是Web网页的基本组成部分HTML中定义的元素, ...
- FileNet P8 工作流生命周期管理和 Process Engine API 应用介绍
摘录:https://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0902wangzheng/ FileNet P8 工作流生 ...
- Json转list,二层解析转换
一层结构的数据: { "code": "0", "results": { "boyTotal": 0, "cl ...
- Adventures in Functions
速度还行,两天看完一章,就是有细节没去扣.书上的大部分知识点和代码都看了,这个还是可以的. 今天继续来学习函数的高级特性,要涉及到以下的主题. 内联函数(inline function) 引用变量(r ...
- Android——Service装取数据
在Service里面装数据,从Activity里面用serviceConnection取数据 xml <?xml version="1.0" encoding="u ...
- DRUPAL8模版命名规则
DRUPAL8模版命名规则 xiaopang 星期一, 04/08/2013 - 20:04 发布 我想了半个小时,想怎么清楚简单的为大家解释drupal8的模版命名规则,但是很显然,我失败了,但 ...
- servlet 过滤器实现 请求转发(跳转);跨域转发请求;tomcat 环境下。
一般的文章都有 文本内容 和图片的.我想实现一个图片服务(或服务器)来单独处理图片逻辑,和文章处理逻辑分离.于是我想到一个办法,来尝试. 背景: 1. 假如文章的处理在web App,就叫web1 吧 ...
- print、print_r、echo到底有什么区别?
echo和print都可以做输出,不同的是,echo不是函数,没有返回值,而print是一个函数有返回值,所以相对而言如果只是输出 echo 会更快,而print_r通常用于打印变量的相关信息,通常在 ...
- In R, how to split/subset a data frame by factors in one column?
按照某列的值拆分data.frame My data is like this (for example): ID Rate State 1 24 AL 2 35 MN 3 46 FL 4 34 AL ...
- Hadoop HDFS分布式文件系统 常用命令汇总
引言:我们维护hadoop系统的时候,必不可少需要对HDFS分布式文件系统做操作,例如拷贝一个文件/目录,查看HDFS文件系统目录下的内容,删除HDFS文件系统中的内容(文件/目录),还有HDFS管理 ...