FCM Web - 相同的前台和后台通知(在前台重用后台通知)

时间:2017-05-26 09:57:30

标签: javascript java firebase web firebase-cloud-messaging

我想知道当我的网站在前台时是否可以显示相同的通知,就像它在后台时一样。我不想个性化通知的外观,我想重复使用它的确切方式。

现在,我正在使用此功能处理通知的到达:

{{1}}

但我不想这样做。删除此功能无济于事。

先谢谢。

2 个答案:

答案 0 :(得分:2)

我不确定是否有其他方法可以解决此问题,但我刚刚创建了一个新通知并使用了messageReceived方法中收到的有效负载:

// Websockets fired. There is a new activity $id. Fetch and enrich:

// Get activity that begins with the new $id
$options = ['id_gte' => $id];

// PROBLEM: First call to get single item returns NULL
$feed->getActivities(0, 1, $options); 

// Second call without conditions returns everything fine
$feed->getActivities(0, 15); 

// The desired activity is now present in response
$feed->getActivities(0, 1, $options); 

答案 1 :(得分:0)

要在Android上工作,必须从serviceWorker发送通知。

要获取Firebase serviceWorker注册并使用它显示通知,您可以执行以下操作:

messaging.onMessage(function(payload) {
    console.log("onMessage: ", payload);
    navigator.serviceWorker.getRegistration('/firebase-cloud-messaging-push-scope').then(registration => {
        registration.showNotification(
            payload.notification.title,
            payload.notification
        )
    });
});