Android-IntentFilter

Android-IntentFilter

一 简介

intentfilter实际上是intent的过滤器

二 使用方法

intentfilter过滤intent的时候,一般是通过过滤action, data, category三个方面检测的

1,检查action:

一个intent只能设置一种action,但是一个intentfilter可以设置多个action过滤,当intentfilter设置了多个action的时候,只需要一个满足即可完成action的验证

2,检查data:

数据的检测主要包含两部分,及数据的URI和数据的类型,数据的URI可以分为三部分(scheme, authority, path),只有全部匹配的时候,data的验证才会成功

3,检查category

intnetfilter可以设置多个category,当intent中的category与intentfilter中一个category完全匹配的时候,就会通过category的检查,而其他的categorycategory不受影响,但是intentfilter没有设置category时,只能与没有设置category的intent相匹配

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-07-28 21:01:41

Android-IntentFilter的相关文章

Android Intent-Filter

1 package com.example.metrox.l10; 2 3 import android.content.Intent; 4 import android.net.Uri; 5 import android.support.v7.app.AppCompatActivity; 6 import android.os.Bundle; 7 import android.view.View; 8 9 public class MainActivity extends AppCompatA

Android IntentFilter 匹配原则浅析

1 Intent分为两大类,显式和隐式. 显式事件,就是指通过 component Name 属性,明确指定了目标组件的事件. 比如我们新建一个Intent,指名道姓的说,此事件用于启动名为"com.silenceburn.XXXX”的Activity,那么这就是一个显式事件. 隐式事件,就是指没有 component Name 属性,没有明确指定目标组件的事件. 比如系统向所有监控通话情况的程序发送的“来电话了!”的事件,由于系统不确定谁会处理这个事件,因此系统不会明确指定目标组件,也就是说没

Android intent-filter 简单用法

对电话拨号盘的过滤,mainfest配置文件中Activity如下配置: <activity Android:name=".TestActivity" android:label="@string/app_name"> <intent-filter> <action Android:name="android.intent.action.CALL_BUTTON" /> <category Android:

android intentFilter 匹配规则

1 概述 activity的启动分为隐式和显式两种,要使用隐式的启动,那么intentFilter是非常重要的一个知识点. 这里将讲解intentFilter的匹配规则. 2 基本形式 <activity android:name="com.tencent.tauth.AuthActivity" android:launchMode="singleTask" android:noHistory="true" android:taskAffi

android intent-filter 注册网页链接打开app

如下实现注册m.hao123.com的链接: <intent-filter><category android:name="android.intent.category.BROWSABLE"/> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT&q

Android中IntentFilter匹配规则详解——Android开发艺术探索笔记

欢迎转载,转载请注明出处http://blog.csdn.net/l664675249/article/details/50640288 启动Activity的方式分为两种,显示和隐式调用.显示调用很简单,直接指明要启动的Activity就可以了,这里主要介绍一下隐式调用.隐式调用需要Intent能够匹配目标组件的IntentFilter中所设置的过滤信息.只有一个Intent同时匹配action,category和data才算匹配成功. 示例 <intent-filter> <acti

(备忘)android清单文件中&lt;meta-data&gt;标签,以及&lt;intent-filter&gt;下的&lt;data&gt;标签及其他标签

1.metadata可以写在application下也可以写在activity下,作为全局或activity内共享的数据 以键值对形式保存 <meta-data android:name="com.XXX.uuid" android:value="XXXX" /> 2.data标签是intent-filter的子标签,限定了intent的mimetype <data android:scheme="file" /> 3.&

android笔记--Intent和IntentFilter详解

Intent用于启动Activity, Service, 以及BroadcastReceiver三种组件, 同时还是组件之间通信的重要媒介. 使用Intent启动组件的优势1, Intent为组件的启动提供了一致的编程模型. 无论想要启动的组件是Activity, Service, 还是BroadcastReceiver, 都可以使用Intent封装启动的意图.2, 在某些时候, 应用程序只是想启动具有某种特征的组件, 并不想和某个特定的组件耦合. 使用Intent可以方便的达到这种高层次解耦的

Android的Intent和IntentFilter应用说明一例

转自:http://www.blogjava.net/TiGERTiAN/archive/2010/02/03/311827.html 很多人对文档中的Intent和IntentFilter不理解是什么意思,我这里举例解释下.Intent字面意思就是目标,目的.通俗一点,需要达成某些目标,则需要提供一些动作,这些目标的分类,以及达成这些目标所需要的一些数据等等.Android中的Intent通过Action,Category和data等属性进行了相应的描述,我们想做某些事情(达成某些目标),就需

android service broadcastreceiver intentfilter

service 组件,和UI并不进行交互,运行在后台,可以和其他组件进行交互 broadcastreceiver,广播是一种广泛运用的在应用程序之间传输信息的机制 .而 BroadcastReceiver 是对发送出来的广播进行过滤接收并响应的一类组件 intentfilter Intent类似于Windows中的消息,而intentfilter可以理解为消息过滤器 下面我们用例子来说明如何运用这三种组件 首先,我们建立一个Serivce,他的作用是每间隔一秒生成一个随机数,并将随机数放到Int