gpt4 book ai didi

android - 应用程序停止时如何接收来自 GCM 的通知

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:55:34 25 4
gpt4 key购买 nike

如果应用程序未运行,GCMIntentService(扩展 GCMBaseIntentService)不会收到通知。

发件人:http://developer.android.com/about/versions/android-3.1.html

在已停止的应用程序上启动控件请注意,系统将 FLAG_EXCLUDE_STOPPED_PACKAGES 添加到所有广播 Intent 。它这样做是为了防止来自后台服务的广播无意中或不必要地启动已停止的应用程序的组件。后台服务或应用程序可以通过添加 FLAG_INCLUDE_STOPPED_PACKAGES 标志来覆盖此行为,以广播应该允许激活已停止应用程序的 Intent 。

有没有办法绕过这个设置?谢谢

最佳答案

GCMIntentService (extends GCMBaseIntentService) doesn't receive notifications if the application is not running.

是的,会的。不过,您的其余问题与应用程序是否正在运行 没有什么关系,而是与用户之前是否运行过它有关。您引用的段落中“停止”一词的意思不是“未运行”,而是表示应用程序处于的状态:

  • 首次安装时,在手动调用组件之前(例如,用户启动 Activity )

  • 在用户强制停止应用程序之后,直到某些东西手动调用组件(例如,用户启动 Activity )

(我真的真的希望他们能想出一个比“停止”更有特色的形容词...)

Is there a way to get around this setting?

没有。如果用户强制停止您的应用程序,则表示他们不希望您的应用程序再次运行,无论出于何种原因,除非他们再次手动启动它。您的目标是让用户没有理由强制停止您的应用程序。请注意,我的意思是“强制停止”(即,从“设置”中按“强制停止”按钮)——普通任务管理器,或从 Android 4.x 中的“近期任务”列表中滑动,没有这种效果。

关于android - 应用程序停止时如何接收来自 GCM 的通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11614521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com