我阅读了Android文档,但我仍然需要更多的说明。PendingIntent到底是什么?
当前回答
PendingIntent基本上是一个包装另一个Intent对象的对象。然后它可以传递给一个外部应用程序,在那里你授予该应用程序执行操作的权利,即,执行意图,就像从你自己的应用程序的进程执行一样(相同的权限和身份)。出于安全原因,您应该始终将显式意图传递给PendingIntent,而不是隐式意图。
PendingIntent aPendingIntent = PendingIntent.getService(Context, 0, aIntent,
PendingIntent.FLAG_CANCEL_CURRENT);
其他回答
未决意图是一个令牌,你给一些应用程序执行你的应用程序的代表,不管你的应用程序进程是否活跃。
我认为文件是足够详细的: 未决的意图文档。
只要想想Pending Intents的用例(broadcast Intents, scheduling alarms),文档就会变得更加清晰和有意义。
其他应用程序可以使用的未来意图。 这里有一个创建一个的例子:
Intent intent = new Intent(context, MainActivity.class);
PendingIntent pendIntent = PendingIntent.getActivity(context, 0, intent, 0);
简单来说
悬而未决的意图基本上是一种意图,你可以传递给其他应用程序或服务,如通知管理器,警报管理器等,让他们处理何时是正确的时间/行为执行。
未决意图是指向其他应用程序提供执行特定工作的所有许可的意图。当主活动被销毁时,Android操作系统会收回主活动的权限。
顾名思义…PendingIntent
你可以过一段时间再做。这是另一个意图。它是一种将你的任务交给其他应用程序来执行的方式。
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- 如何在TextView中添加一个子弹符号?
- PreferenceManager getDefaultSharedPreferences在Android Q中已弃用
- 在Android Studio中创建aar文件