intentfilter,intentfilteradddatascheme

http://www.itjxue.com  2023-01-05 08:32  来源:未知  点击次数: 

Android Studio的intent-filter,action,category是什么?

准确来说这仨不属于Android studio,而是属于Android系统里的重要的三个属性。

注:Android系统里一些属性或者名词的翻译总是不能确切表达其真实的含义,仅供理解参考。

Android基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,它允许在你的应用程序与其它的应用程序间传递Intent来执行动作和产生事件。使用Intent可以激活Android应用的三个核心组件:活动、服务和广播接收器。

提起intent-filter(意图过滤器),首先得知道Intent(意图),Intent Filter(意图过滤器)其实就是用来匹配隐式Intent的,当一个意图对象被一个意图过滤器进行匹配测试时,只有三个方面会被参考到:动作、数据(URI以及数据类型)和类别。这其中就包含action和category.

action表示你接下来的行为,比如你要打开一个新的activity,这个行为就成为一个动作。

category表示这个动作的类型。

我们来举个例子:

activity android:name=".SplashActivity" android:theme="@style/LaunchScreenTheme"

intent-filter

action android:name="android.intent.action.MAIN" /

category android:name="android.intent.category.LAUNCHER" /

/intent-filter

/activity

用一句通俗的话描述就是:当intent-filter收到带有action为"android.intent.action.MAIN"de intent时,就会执行category里的“android.intent.category.LAUNCHER”对SplashActivity进行操作。

android应用程序开发中的intentfilter是什么,怎么用?

在intent中设置action,

data,

categroy之后在对应的intentfilter中设置相同的属性即可通过过滤被activity调用详细的过滤规则你上网查查吧~特别是data的过滤规则~

Intent和IntentFilter的区别详解

1. 从名字来看 IntentFilter 比Intent 多了个Filter

即后者比前者多了个筛选作用

筛选条件:

action、data和category

2.intent

filter一般不会在java代码中设置,而是在应用的manifest文件中作为intent-filter元素的方式声明。一个例外是,为broadcast

receiver注册动态的filter,可以调用Context.registerReceiver()方法,通过直接实例化IntentFilter对象创建。

(责任编辑:IT教学网)

更多

相关MYSQL文章

推荐MYSQL文章