intentfilterintent-filter中的data属性怎么用?到处找不到例子...

intentfilter  时间:2021-07-05  阅读:()

android intent filter 怎么获得数据

千 锋扣丁学堂iOS开发为32313133353236313431303231363533e4b893e5b19e31333361303132您解答: 1. Android把安装的包中可获得的Intent Filter放到一个列表中。

2. 动作和与正在解析的Intent的种类不关联的Intent Filter会从列表中删除。

2.1. 动作匹配指Android Intent Filter包含特定的动作或没有指定的动作。

一个Intent Filter有一个或多个定义的动作,如果没有任何一个能与Intent指定的动作匹配的话,这个Intent Filter在算作是动作匹配检查失败。

2.2. 种类匹配更为严格。

Intent Filter必须包含所有在解析的Intent中定义的种类。

一个没有特定种类的Intent Filter只能与没有种类的Intent匹配。

3. Intent的数据URI中的部分会与Intent Filter中的data标签比较。

如果Intent Filter定义scheme,host/authority,path或mimetype,这些值都会与Intent的URI比较。

任何不匹配都会导致Intent Filter从列表中删除。

没有指定data值的Android Intent Filter会和所有的Intent数据匹配。

3.1. mimetype是正在匹配的数据的数据类型。

当匹配数据类型时,你可以使用通配符来匹配子类型(例如,earthquakes/*)。

如果Intent Filter指定一个数据类型,它必须与Intent匹配;没有指定数据的话全部匹配。

3.2. scheme是URI部分的协议——例如,http:,mailto:,tel:。

3.3. host-name或“data authority”是介于URI中scheme和path之间的部分。

匹配主机名时,Intent Filter的scheme也必须通过匹配。

3.4. 数据path是紧接在“data authority”的后面(例如,/ig)。

path只在scheme和host-name部分都匹配的情况下才匹配。

4. 如果这个过程中多于一个组件解析出来的话,它们会以优先度来排序,可以在Android Intent Filter的节点里添加一个可选的标签。

最高等级的组件会返回。

Android本地的应用程序组件和第三方应用程序一样,都是Intent解析过程中的一部分。

它们没有更高的优先度,可以被新的Activity完全的代替,这些新的Activity宣告自己的Intent Filter能响应相同的动作请求。

android,,,manifest.xml 怎么有两个 <intent-filter >??每个作用是什么啊?

首先注意每个intent-filter 是在不同的activity里。

<intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> 这个是FirstActivity类的,表示这个activity是主页面,就是app运行时的启动页面。

<intent-filter > <action android:name="test_action" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> 这个是SecondActivity类的,表明想得到一个action为“test_action”的intent,从你的类名猜测,你应该是从FirstActivity跳转到SecondActivity。

那么在创建intent时,设置action为“test_action”,则可以实现。

简单的说Intent是请求或者意图,你可以使用IntentFilter 来过滤出自己想要的intent,详细了解可在网上搜索intent关键字。

intent-filter中的data属性怎么用?到处找不到例子...

检查 Data 同Action一样,Intentfilter中的Data部分也可以是一个或者多个,而且可以没有。

每个Data包含的内容为URL和数据类型,进行Data检查时主要也是对这两点进行比较,比较规则: 如果一个Intent对象没有设置Data,只有Intentfilter也没有设置Data时才可通过检查。

如果一个Intent对象包含URI,但不包含数据类型:仅当Intentfilter也不指定数据类型,同时它们的URI匹配,才能通过检测。

如果一个Intent对象包含数据类型,但不包含URI:仅当Intentfilter也没指定URL,而只包含数据类型且与Intent相同,才通过检测。

如果一个Intent对象既包含URI,也包含数据类型(或数据类型能够从URI推断出),只有当其数据类型匹配Intentfilter中的数据类型,并且通过了URL检查时,该Intent对象才能通过检查。

其中URL由四部分组成:它有四个属性scheme、host、port、path对应于URI的每个部分。

例如:content:/.wjr.example1:121/files scheme部分:content host部分.wjr.example1 port部分:121 path部分:files host和port部分一起构成URI的凭据(authority),如果host没有指定,那port也会被忽略。

这四个属性是可选的,但他们之间并不是完全独立的。

要让authority有意义,scheme必须要指定。

要让path有意思,scheme和authority必须指定。

Intentfilter中的path可以使用通配符来匹配path字段,Intent和Intentfilter都可以用通配符来指定MIME类型。

没详细了解过 不知道能不能帮助到你 到安卓巴士网站查看回答详情>>

香港ceranetworks(69元/月) 2核2G 50G硬盘 20M 50M 100M 不限流量

香港ceranetworks提速啦是成立于2012年的十分老牌的一个商家这次给大家评测的是 香港ceranetworks 8核16G 100M 这款产品 提速啦老板真的是豪气每次都给高配我测试 不像别的商家每次就给1核1G,废话不多说开始跑脚本。香港ceranetworks 2核2G 50G硬盘20M 69元/月30M 99元/月50M 219元/月100M 519元/月香港ceranetwork...

sharktech:老牌高防服务器商,跳楼价,1G独享$70、10G共享$240、10G独享$800

不知道大家是否注意到sharktech的所有服务器的带宽价格全部跳楼跳水,降幅简直不忍直视了,还没有见过这么便宜的独立服务器。根据不同的机房,价格也是不一样的。大带宽、不限流量比较适合建站、数据备份、做下载、做流媒体、做CDN等多种业务。 官方网站:https://www.sharktech.net 付款方式:比特币、信用卡、PayPal、支付宝、西联汇款 以最贵的洛杉矶机器为例,配置表如...

[黑五]ProfitServer新加坡/德国/荷兰/西班牙VPS五折,不限流量KVM月付2.88美元起

ProfitServer已开启了黑色星期五的促销活动,一直到本月底,商家新加坡、荷兰、德国和西班牙机房VPS直接5折,无码直购最低每月2.88美元起,不限制流量,提供IPv4+IPv6。这是一家始于2003年的俄罗斯主机商,提供虚拟主机、VPS、独立服务器、SSL证书、域名等产品,可选数据中心包括俄罗斯、法国、荷兰、美国、新加坡、拉脱维亚、捷克、保加利亚等多个国家和地区。我们随便以一个数据中心为例...

intentfilter为你推荐
md5值md5值什么用拓扑关系什么是空间数据的拓扑关系备忘录模式Java中常用的设计模式有哪些?请详细说明一下工厂模式。spawning为什么编译和运行vc++ 时会出现Error spawning c1.exe 的错误有b吗34B的胸围有多大?ruby语言Ruby是 什么意思imqq官网如何伸请QQ?系统论坛怎么进论坛清除电脑垃圾怎样清除电脑里的垃圾什么是SOA什么是cookies 有什么作用
免费二级域名 美国vps vps租用 淘宝二级域名 阿里云搜索 42u机柜尺寸 parseerror 搜狗抢票助手 福建天翼加速 100m空间 免费吧 网络空间租赁 重庆双线服务器托管 hkt web服务器安全 东莞服务器 攻击服务器 阿里云邮箱申请 黑科云 windowsserver2012r2 更多