【问题标题】:Phonegap app clear pushnotifications doesn't workPhonegap 应用清除推送通知不起作用
【发布时间】:2016-11-01 20:43:38
【问题描述】:

我的应用确实收到了来自 GCM 的推送通知。 然后在我的 iOS 设备中,图标上显示的数字等于数量或收到的通知。

我想在打开应用程序时清除它。 根据文档,我必须使用这些代码行:

push.clearAllNotifications(function() {
   alert("1");
}, function() {
   alert("2");
});

但是,此后的所有代码都不起作用,两个警报之一也没有显示。当然,数字仍然显示在图标上。 任何提示或替代方法?

编辑: 我当前的代码:

function startPush() {

            var push = PushNotification.init({
                android: {
                    senderID: "xxxx",
                    vibrate: true
                },
                ios: {
                    senderID: "951044503850",
                    gcmSandbox: false,
                    alert: "true",
                    badge: true,
                    sound: 'false',
                    clearBadge: "true"
                }
            });

            push.on('registration', function(data) {
                var regID = data.registrationId;
               alert(regID);
                //this works


            });
            push.clearAllNotifications(function() {
               alert("1");
               //does not fire
            }, function() {
               alert("2");
               // does not fire
            });

}

我确实收到了一个registrationId,所以这部分确实有效。但是警报(1)或警报(2)不会触发,因此这部分不起作用。 顺便说一句,奖励积分;),我的手机也不会在推送通知时振动

【问题讨论】:

  • 你初始化 push 变量了吗?
  • @jcesarmobile 我编辑了我的“问题”,现在你可以看到我做了什么。事实上,我确实获得了一个有效的registrationId,并且它有效,我可以发送推送通知,我认为我可以声明推送变量已被初始化。

标签: javascript cordova notifications


【解决方案1】:

替代解决方案

添加 Cordova Badge Plugin 并在应用初始化时设置徽章 0(零)

document.addEventListener('deviceready', function () {
    cordova.plugins.notification.badge.set(0);
}, false);

或者任何你想隐藏图标徽章的地方

【讨论】:

  • 感谢这个替代方案,另一种解决方法是在初始化中添加 clearBadge 索引。
  • 是的,这比在应用程序中添加新插件要好。如果您完成了您的要求,而不仅仅是对我的回答表示赞同;)
  • 我仍然想知道为什么我的原始代码不起作用,因为它是插件描述的默认给定函数。它应该工作,但它没有......
  • 由于我们无法设置或获取前台推送通知的警报,同样的方式可能也不会在执行时触发任何警报,如果您想检查这是否有效,您可以添加badge plugin 并将任何静态徽章设置为成功和失败,如果这有效,您将在应用程序图标上获得该静态数字
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-19
  • 1970-01-01
相关资源
最近更新 更多