Android 使用FCM发送单个推送通知

Android 使用FCM发送单个推送通知,android,firebase,firebase-cloud-messaging,android-webview,Android,Firebase,Firebase Cloud Messaging,Android Webview,我有一个简单的WebView应用程序,它是一个具有身份验证功能的移动响应网站(身份验证不在应用程序本身中,而是在WebView->它使用会话和cookie进行长期登录) 我想做的是根据网站数据库中的数据分别为每个用户发送推送通知 我的问题如下: 如何在WebView中的登录用户和应用程序之间建立“连接”(可能从WebView中提取登录cookie?) 我如何专门为个人用户(问题1中收集并关联的用户)而不是一般通知使用FCM。我发现了一些关于这方面的信息,我必须为每个用户创建一个听起来不太可靠的

我有一个简单的WebView应用程序,它是一个具有身份验证功能的移动响应网站(身份验证不在应用程序本身中,而是在WebView->它使用会话和cookie进行长期登录)

我想做的是根据网站数据库中的数据分别为每个用户发送推送通知

我的问题如下:

  • 如何在WebView中的登录用户和应用程序之间建立“连接”(可能从WebView中提取登录cookie?)

  • 我如何专门为个人用户(问题1中收集并关联的用户)而不是一般通知使用FCM。我发现了一些关于这方面的信息,我必须为每个用户创建一个听起来不太可靠的“主题”,这就是FCM用于个人通知的方式吗

  • 函数如下所示(node.js):

    来源:

    除了主题之外,还可以使用特定于设备的电子邮件发送通知。这些通知令牌是特定于设备的,据我所知,在auth系统之外。如果我理解正确,您的应用程序在应用程序的所有用途上都依赖于
    WebView


    我建议您遵循前面提到的链接,在应用程序中实现令牌检索,然后将其作为URL参数传递。您可以将列表(或单个)通知令牌传递给目标单个设备(而不是用户),而不是主题。

    我希望这有帮助

    function sendNotificationToUser(username, message, onSuccess) {
      request({
        url: 'https://fcm.googleapis.com/fcm/send',
        method: 'POST',
        headers: {
          'Content-Type' :' application/json',
          'Authorization': 'key='+API_KEY
        },
        body: JSON.stringify({
          notification: {
            title: message
          },
          to : '/topics/user_'+username
        })
      }, function(error, response, body) {
        if (error) { console.error(error); }
        else if (response.statusCode >= 400) { 
          console.error('HTTP Error: '+response.statusCode+' - '+response.statusMessage); 
        }
        else {
          onSuccess();
        }
      });
    }