关于android隐式启动activity的分析和说明,Android 隐式启动Activity之:action,category,data...

本文详细介绍了Android中Activity的隐式启动方式,包括action、category和data的匹配规则。隐式启动需要在AndroidManifest.xml中配置过滤器,Intent必须同时匹配上过滤器中的action、category和data才能成功启动Activity。文中还提供了实例代码进行演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android 启动Activity 分为两种:显示启动 和 隐式启动

显示启动:就是通过Intent 指明 那个包名+类名Activity,是开发中最常用的启动方式,在这就不说了,不是本文的目标

隐示启动:现在说一下隐式启动。隐式启动也是通过Intent ,不过必须给 Intent 加上匹配数据,匹配数据必须和目标Activity的其中一个过滤器配上,方可启动目标Activity。关于 匹配数据和 过滤器,请看下面:

可以隐式启动的Activity,必须在清单文件 AndroidManifest.xml里给这个Activity配置一个或多个过滤器,

下文 对 intent-filter 统称为:过滤器

这个过滤器的作用是:外部可以启动我这个Activity,但必须要匹配上我其中一个过滤器,就可以启动 这个Activity。

划重点!!!!------ 匹配上其中一个过滤器即可启动目标Activity

先上个Demo,过滤器是在 AndroidManifest.xml里面给Activity配置的。比如:

很明显,FilterActivity 配置了两个过滤器 ,说了那么久,那到底怎么样才算成功匹配上一个过滤器呢?

先别急,我们先看一下过滤器里面的构造,看上面配置可以看到,一个过滤器有三种参数,分别是:

1>  action

2>  category

3>  data

1和2参数的类型是字符型。3是 Uri + mimeType

还有,这三种参数,每一种参数可以有一个或多个。比如上面的

action参数: 就有 FilterActivity_Action1 和 FilterActivity_Action2  两个参数

category参数:就有 FilterActivity_Category1 和 FilterActivity_Category2 两个参数

data参数:有2个,形式是Uri + mimeType (具体是什么后面会说道)

现在暂且不说每个参数的细分匹配,就问:怎么才算完全匹配上一过滤器呢&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值