收到推送通知后,Whatsapp 服务在强制停止后重新启动

Posted

技术标签:

【中文标题】收到推送通知后,Whatsapp 服务在强制停止后重新启动【英文标题】:Whatsapp service restarts after force stop when push notification received 【发布时间】:2015-09-04 10:32:59 【问题描述】:

我们正在尝试了解三星 S5 及以上机型中whatsapp 服务的行为。在这些型号中,whatsapp 应用程序嵌入到设备的 ROM 中,您无法将其卸载。即使我强制停止应用程序,whatsapp 服务也会运行并在收到推送通知时显示消息。

我已经在whatsapp 不在 ROM 上的 Nexus 5 设备上进行了尝试。在这种情况下,强制停止后,whatsapp 无法收到推送通知,服务仍然没有运行。

我怀疑三星为whatsapp 应用程序提供了另一个特权。顺便说一句,我们正在从 android 清单文件注册到广播接收器。

提前致谢,

【问题讨论】:

【参考方案1】:

安装在 /system/app/system/priv-app 文件夹下的应用程序(大多数 ROM 捆绑应用程序都在这些文件夹中,无法卸载) 仍然可以接收推送通知,即使它们被用户强制停止。

因此,三星不太可能给 Whatsapp 一些特权,但他们只是将其与 ROM 捆绑在一起,并将 apk 放入系统应用程序文件夹之一。

【讨论】:

【参考方案2】:

Android 已从 Android 3.0 进行更改或限制安装的应用必须至少打开一次才能启动服务或接收广播。 , 对于 3rd 方 或 已 安装 的 应用 , 如果 服务 被 杀死 , 该 应用 应 至少 打开 一次 .因此,对于 Nexus 5,whats 应用程序是 3rd 方应用程序,而在三星中它是一个系统应用程序,因此它有权在不启动应用程序的情况下启动服务。

【讨论】:

以上是关于收到推送通知后,Whatsapp 服务在强制停止后重新启动的主要内容,如果未能解决你的问题,请参考以下文章

推送通知代码执行(强制退出应用)

iOS 通知:WhatsApp 在强制关闭后如何接收通知和处理?

如果我强制停止应用程序,GCM 会收到推送通知

打包 iOS 应用后推送通知停止工作

打包iOS应用程序后推送通知停止工作

为啥在收到推送通知后 launchOptions 为零?