android developer tiny share-20160810

本文介绍了如何使用PendingIntent对象来实现从通知、Widget或AlarmManager中安全地执行Intent。PendingIntent允许外部应用执行Intent,就像这些Intent是由原始应用直接触发的一样。
使用PendingIntent
PendingIntent对象是Intent对象的包装器。PendingIntent 的主要目的是授权外部应用使用包含的 Intent,如Notification、Widget、Alarm,就像是它从您应用本身的进程中执行的一样。

待定 Intent 的主要用例包括:
声明用户使用您的通知执行操作时所要执行的 Intent(Android 系统的 NotificationManager 执行 Intent)。
声明用户使用您的 应用小工具执行操作时要执行的 Intent(主屏幕应用执行 Intent)。
声明未来某一特定时间要执行的 Intent(Android 系统的 AlarmManager 执行 Intent)。
由于每个 Intent 对象均设计为由特定类型的应用组件进行处理(Activity、Service 或 BroadcastReceiver),因此还必须基于相同的考虑因素创建 PendingIntent。使用待定 Intent 时,应用不会使用调用(如 startActivity())执行该 Intent。相反,通过调用相应的创建器方法创建 PendingIntent 时,您必须声明所需的组件类型:
PendingIntent.getActivity(),适用于启动 Activity 的 Intent。
PendingIntent.getService(),适用于启动 Service 的 Intent。
PendingIntent.getBroadcast(),适用于启动 BroadcastReceiver 的 Intent。
除非您的应用正在从其他应用中接收待定 Intent,否则上述用于创建 PendingIntent 的方法可能是您所需的唯一 PendingIntent 方法。
每种方法均会提取当前的应用 Context、您要包装的 Intent 以及一个或多个指定应如何使用该 Intent 的标志(例如,是否可以多次使用该 Intent)。
如需了解有关使用待定 Intent 的详细信息,请参阅通知 和应用小工具 API 指南等手册中每个相应用例的相关文档。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值