首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android Oreo应用更新后如何重启前台服务?

Android Oreo应用更新后如何重启前台服务?
EN

Stack Overflow用户
提问于 2018-06-10 04:55:10
回答 1查看 1.1K关注 0票数 2

我们需要在应用程序从Google Play自动更新后重新启动应用程序的前台服务。对于SDK < 26版本,我们在PACKAGE_REPLACED actoin上注册了接收器,一切工作正常。如果禁止隐式意图,我们如何在SDK 26中做同样的事情?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-10 05:08:35

首先,并不是所有的隐式广播都被禁止。这就是a whitelist

其次,ACTION_MY_PACKAGE_CHANGED是一个明确的广播,只发送给你的应用程序。引用the documentation

以Android8.0或更高版本为目标的

应用程序不能再在其清单中注册隐式广播的广播接收器。隐式广播是指不专门针对该应用程序的广播。例如,ACTION_PACKAGE_REPLACED是一种隐式广播,因为它会发送给所有注册的侦听器,让它们知道设备上的某个包已被替换。然而,ACTION_MY_PACKAGE_REPLACED不是一个隐含的广播,因为它只发送到包被替换的应用程序,无论有多少其他应用程序注册了该广播的侦听器。

因此,您应该能够注册ACTION_MY_PACKAGE_REPLACED,并在那里重新启动您的服务。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50778456

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档