代码之家  ›  专栏  ›  技术社区  ›  Harish Mahajan

在IOS中打开应用程序之前,应设置徽章

  •  2
  • Harish Mahajan  · 技术社区  · 8 年前

    当在IOS设备上收到通知时,应在打开应用程序之前更改徽章并设置徽章。

    我检查这个onNotificationOpen()方法。但当我点击通知时,它就会呼叫。

    我使用 cordova-plugin-firebase . 这是链接 https://github.com/arnesson/cordova-plugin-firebase

    但是,有没有一种方法可以在IOS设备上收到通知时调用?

      $ionicPlatform.ready(function() {
        if (typeof FirebasePlugin != 'undefined') {
          window.FirebasePlugin.subscribe("notficationsubscribe");
    
          // Below method calls when i tap on notifcation and sets the badge number             
          window.FirebasePlugin.onNotificationOpen(function(data) {
              window.FirebasePlugin.setBadgeNumber(4);
          }
        }
      }
    

    以上是FirebasePlugin。onNotificationOpen()方法在我点击通知并设置徽章编号时调用,但我想在收到通知时设置徽章。

    有人有想法吗?我如何实现它?

    2 回复  |  直到 8 年前
        1
  •  2
  •   Harish Mahajan    8 年前

    实际上我为它设定了一个逻辑。

    我将badgeCounter值存储到数据库中。

    2) 当我想在那个时候发送通知时,我会从数据库中检索它

     var badge = badgeCounter // it is an integer value
    
     var notification = {
        'title': 'Stock available',
        'body': 'Click here to more details...',
        'sound': 'default',
        'badge': badge 
     };
    

    3) window.FirebasePlugin.setBadgeNumber(0);

    同时在数据库中,我将值更新为“0”(零)。

    因此,我解决了它,它完全适合我。

        2
  •  0
  •   Sti    8 年前

    您不需要用代码设置它,它将根据通知包含的内容进行设置。你必须包括 "badge":1 当您从服务器(Firebase)发送时,通知负载中的(或任何数字)。我不确定它如何与firebase配合使用,但请看一下 documentation 用于远程通知。注意“徽章”键。