推送通知仅显示在托盘中

时间:2018-02-07 10:51:11

标签: android cordova azure notifications

我正在使用Azure Notification Hub和Phonegap推送插件,并通过此有效负载向Android手机发送推送通知:

{  
   "data":{  
      "title":"Ex",
      "message":"Notification Hub test notification",
      "content-available":"1",
      "uuid":"6a1da769-e499-11e7-aa20-de2b503f5007",
      "category":"sales-offer"
   }
}

但问题是我只在托盘中收到通知,其中的图标没有显示在带有信息的信息上。我需要打开托盘才能获得信息。我希望它在屏幕上显示信息(正文,图标和标题)。

我可以在有效负载中添加内容,还是在我的应用中添加一项设置来更改此行为?

1 个答案:

答案 0 :(得分:0)

您需要配置默认的通知渠道并提高重要性。

async function createNotificationChannel ({channelId, description, importance}) {
  if (device.platform.toLowerCase() !== 'android') {
    return false;
  }

  // code runs only on android platform :)
  const wAny: any = window;
  return new Promise((resolve, reject) => {
    wAny.PushNotification.createChannel(
      () => {
        resolve(true)
      },
      () => {
        resolve(false)
      },
      {
        id: channelId,
        description: description,
        importance: importance,
        visibility: 1,
        vibration: true
      }
    );
  });
}

在调用PushNotification.init之前,请先调用:

const channelCreated = await createNotificationChannel(
  {
    channelId: 'PushPluginChannel',
    description: 'Important notifications',
    importance: 5
  });

我还优先考虑:在较旧设备的有效负载中为2。