gpt4 book ai didi

android - cordova - 应用程序关闭时未收到 Android 推送通知

转载 作者:行者123 更新时间:2023-11-29 01:29:20 24 4
gpt4 key购买 nike

我目前正在开发 Android (Cordova) 应用程序,并且正在使用 OneSignal 推送通知。首先,如果我关闭应用程序,推送通知不会被发送,所以我必须添加一个 Cordova 插件来保持我的应用程序在后台运行:

cordova.plugins.backgroundMode.enable();

问题是,当我启动我的手机时,我无法接收推送通知(因为 deviceready 没有被触发)。直到我打开应用。

是否有一种解决方案可以在设备启动后立即启动推送通知服务,比如在后台运行的东西?

设备就绪后我的代码:

    cordova.plugins.backgroundMode.enable();

var notificationOpenedCallback = function(jsonData) {
console.log('didReceiveRemoteNotificationCallBack: ' + JSON.stringify(jsonData));
};

window.plugins.OneSignal.init( "my-api-key",
{googleProjectNumber: "7-cant-share-it"},
app.didReceiveRemoteNotificationCallBack);
}

谢谢。

最佳答案

您如何关闭您的应用程序?确保您使用的是我们的 OneSignal Cordova SDK 1.7.5 或更新版本,因为与接收通知相关的后退按钮问题已得到修复。您可以通过运行 cordova plugin list 查看您的项目正在使用的当前版本。

我在 Android 5.0.2 和 4.3 设备上进行了一些测试,只要应用未处于“强制停止”状态,每次启动时都会收到通知。

当您的应用进入“停止状态”时,您应用中的所有 BroadcastReceivers 都将停止接收 Intent 。这包括在收到来自 Google 的通知消息时触发的 GCM Intent 。这是 Android 3.1 及更高版本的已知和预期行为。

有关 Force Stop 如何影响应用的更多详细信息,请参阅以下链接:

回顾一下,只要您的应用程序没有因按下“设置”>“应用程序”中的“强制停止”按钮或来自激进的第 3 方任务管理器而进入强制停止状态,您的应用程序将始终显示/接收 OneSignal 通知也执行相同的操作。

谢谢。

关于android - cordova - 应用程序关闭时未收到 Android 推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32168330/

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