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类型。

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

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

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

Tudcloud(月付7.2美元),香港VPS,可选大带宽或不限流量

Tudcloud是一家新开的主机商,提供VPS和独立服务器租用,数据中心在中国香港(VPS和独立服务器)和美国洛杉矶(独立服务器),商家VPS基于KVM架构,开设在香港机房,可以选择限制流量大带宽或者限制带宽不限流量套餐。目前提供8折优惠码,优惠后最低每月7.2美元起。虽然主机商网站为英文界面,但是支付方式仅支付宝和Stripe,可能是国人商家。下面列出部分VPS主机套餐配置信息。CPU:1cor...

CloudCone中国新年特别套餐,洛杉矶1G内存VPS年付13.5美元起

CloudCone针对中国农历新年推出了几款特别套餐, 其中2019年前注册的用户可以以13.5美元/年的价格购买一款1G内存特价套餐,以及另外提供了两款不限制注册时间的用户可购买年付套餐。CloudCone是Quadcone旗下成立于2017年的子品牌,提供VPS及独立服务器租用,也是较早提供按小时计费VPS的商家之一,支持使用PayPal或者支付宝等付款方式。下面列出几款特别套餐配置信息。CP...

intentfilter为你推荐
元数据管理请问metadata是什么意思?在线课堂钉钉群直播和在线课堂的区别?wmiprvsewmiprvserbf神经网络rbf神经网络的输入参数个数有上限么google邮箱注册怎样创建google邮箱foxmail邮箱注册FOXMAIL邮箱在哪里可以注册?mindmanager破解版xmind mac破解版哪个好用tvosTVOS推广怎么样?arc是什么意思数学中的arctan是什么意思调度系统操作系统中为什么需要调度?
德国vps 怎么申请域名 securitycenter raksmart 息壤备案 linode代购 godaddy优惠券 debian6 七夕快乐英文 酷番云 江苏双线服务器 网页提速 什么是web服务器 lamp架构 空间服务器 开心online 九零网络 美国asp空间 cdn加速 linux服务器系统 更多