深度解析 PendingIntent 及其与 Intent 的区别

本文深度解析了Intent和PendingIntent在Android系统中的作用和区别。Intent用于组件间的信息传递,而PendingIntent是在未来某个时刻被使用的Intent,允许其他应用在特定条件下执行特定操作。PendingIntent的主要应用场景包括非即时操作,如闹钟、通知等,其四个Flag用于管理Intent的创建、更新和使用次数。
摘要由CSDN通过智能技术生成

什么是Intent

Intent 在组件间被用于进行信息传递(例如 Activitiy, Service, Broadcast Receiver, Content Provider),从而调用不同的组件以完成我想要完成的事。而这里提到的信息是什么呢:是你想要做的事。举例来说吧:

我想要在KFC点一份外卖,那么当这份信息被发送出去以后,KFC以外的外卖店都不会理我,只有KFC会接受这份信息,并且处理它,最后给我送来我要的外卖。

但如果我发出的信息是:我想要一份外卖,那么这就说明我没有指定是谁送给我(这里默认为谁先处理就谁先获得),所以最先处理了我的需求的外卖店会送来外卖,而外卖是什么并不重要;但例子中我指明了:我要KFC的外卖。所以在例子中我们又可以了解到另一个有关Intent的知识:Intent有准确和不准确之分(explicit/implicit)。

而我们接下来要提到的 PendingIntent 就是 implicit Intent 的一种。

什么是PendingIntent

PendingIntent 是在未来被使用的 Intent,这样说感觉很难懂,举个例子吧:

我想在下班以后立刻去健身。那么在健身之前的这段时间里,我都得乖乖呆在办公室里码代码、看动漫、看博客等等……反正我必须等到下班以后,才能去健身。但是在下班以前,我又必须记得我下班以后要去健身。

而在 Android 中,使用 PendingIntent 能够让你允许其他应用能够使用你开发的应用中的权限,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值