位置: 编程技术 - 正文
推荐整理分享Android技术——Intent Filter(android技术总结),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:android技术总结,android技巧,android技术分享 干货,android技术分享 干货,android 技术,android用到的技术,android technology,android 技术,内容如对您有帮助,希望把文章链接给更多的朋友!
1、要把一个Activity或者Service注册为一个可以接受隐式intent的处理程序,需要在它的manifest节点中添加一个intent-filter标签。
2、intent-filter标签包含的属性:
intent-filter包含action,category,data三大属性。在隐式intent发布时,这些属性将与这个intent进行匹配,匹配的结果将决定那个(些)处理程序将会被调用。
2.1 action
每个Intent Filter必须要包含至少一个action标签。Action的android:name属性指定需要处理的动作名称。这个名称应该是唯一的描述性字符串,推荐的做法是借鉴java包名约定来命名Action。
2.2 category(类别)
category使用android:name属性来指定在什么情况下为intent提供服务。每个Intent Filter可以有多个category标签。既可以指定自己的category也可以使用Android提供的标准。
这些标准有:
LAUNCHER:监听这个Intent Filter的Activity会出现在应用程序的启动器中。
HOME:监听这个Intent Filter的处理程序可以作为本地屏幕的可选项。
BROWSABLE:监听这个Intent Filter的处理程序将可以处理一个来自浏览器内部的动作。
ALTERNATIVE:为特定动作提供默认的操作。
SELECTED_ALTERNATIVE:
2.3 data
隐式intent用于匹配intent-filter的数据类型,这些数据类型有:
android:host、android:mimetype、android:path、android:port、android:scheme
例如我们在点击一段下载链接时,到底是触发浏览器还是触发迅雷下载软件,这个就是由data标签来实现的。
3、intent-filter的匹配过程
在使用隐式intent来启动可能的处理程序时,这个intent将会和所有已经在Android操作系统注册过的intent-filter有一个匹配过程。这个匹配过程将会找出符合要求的最合适的处理程序来处理这个隐式intent。
step1:隐式intent的action name必须与intent-filter的action name相同,否则匹配失败
step2:隐式intent的category只能是intent-filter的子集,否则匹配失败
step3:data里面的数据必须逐项完全相同,否则匹配失败
step4:如果有多个处理程序的intent-filter同时匹配这个隐式intent,
Button.setOnClickListener(OnClickListener l) 原理 android,java使用Button可能都会监听之当其被点击就会有函数负责回调那么其到底是怎么实现的呢?今天要做的就是摸清楚之为了减少不必要的麻烦打算exten
Android 安卓 API 兼容 @SuppressLint(NewApi)if(Build.VERSION.SDK_INT=Build.VERSION_CODES.Honeycomb){//如果api版本大于}else{//如果api版本小于}Android版本名和APILevel关系全称Android的版本Android版
百度定位SDK5.x版本开发指南修正说明 百度开发者中心有给出5.x版本(目前最新是5.2)开发指导说明,但无法成功定位。除参考官网指导说明外,
标签: android技术总结
本文链接地址:https://www.jiuchutong.com/biancheng/382233.html 转载请保留说明!友情链接: 武汉网站建设