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

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

HostHatch(15美元)大硬盘VPS,香港NVMe,美国、英国、荷兰、印度、挪威、澳大利亚

HostHatch在当地时间7月30日发布了一系列的促销套餐,涉及亚洲和欧美的多个地区机房,最低年付15美元起,一次买2年还能免费升级双倍资源。商家成立于2011年,提供基于KVM架构的VPS主机,数据中心包括中国香港、美国、英国、荷兰、印度、挪威、澳大利亚等国家的十几个地区机房。官方网站:https://hosthatch.com/NVMe VPS(香港/悉尼)1 CPU core (12.5%...

两款半月湾 HMBcloud 春节88折日本和美国CN2 VPS主机套餐

春节期间我们很多朋友都在忙着吃好喝好,当然有时候也会偶然的上网看看。对于我们站长用户来说,基本上需要等到初八之后才会开工,现在有空就看看是否有商家的促销。这里看到来自HMBcloud半月湾服务商有提供两款春节机房方案的VPS主机88折促销活动,分别是来自洛杉矶CN2 GIA和日本CN2的方案。八八折优惠码:CNY-GIA第一、洛杉矶CN2 GIA美国原生IP地址、72小时退款保障、三网回程CN2 ...

DMIT:美国cn2 gia线路vps,高性能 AMD EPYC/不限流量(Premium Unmetered),$179.99/月起

DMIT怎么样?DMIT最近动作频繁,前几天刚刚上架了日本lite版VPS,正在酝酿上线日本高级网络VPS,又差不多在同一时间推出了美国cn2 gia线路不限流量的美国云服务器,不过价格太过昂贵。丐版只有30M带宽,月付179.99美元 !!目前,美国云服务器已经有个4个套餐,分别是,Premium(cn2 gia线路)、Lite(普通直连)、Premium Secure(带高防的cn2 gia线...

intentfilter为你推荐
firstnamefirst name 是什么意思在线课堂老师怎么在线授课?云图片云相册是什么意思bindserviceonserviceconnected什么时候执行备忘录模式为什么我的华为手机界面总是有个框框在备忘录上面arc是什么意思arctanx等于什么?欢迎页面如何设置电脑的欢迎界面?faq是什么意思在国际贸易中“FAQ”代表的是什么意思jsindexofjavascript 中indexof 的用法图片存储手机照片的保存方法?
河南vps 免费申请域名 重庆服务器托管 liquidweb 博客主机 便宜建站 域名优惠码 网络星期一 好看的留言 淘宝双十一2018 搜狗抢票助手 佛山高防服务器 中国电信测速网 美国堪萨斯 多线空间 空间购买 下载速度测试 东莞主机托管 西安主机 photobucket 更多