如何从适用于 Chrome 应用的 GCM 连接服务器获取注册令牌

How to obtain registration token from GCM connection servers for Chrome app?

本文关键字:服务器 连接 获取 注册 令牌 GCM 适用于 Chrome 应用      更新时间:2023-09-26

我正在开发一个使用 Google Cloud Messaging API 接收推送通知的 chrome 应用程序/扩展程序。我正在遵循的教程是这样的。在"获取GCM注册令牌"部分之前,一切都很清楚。

下面的代码解释了注册过程的一部分。

function registerCallback(registrationId) {
  if (chrome.runtime.lastError) {
    // When the registration fails, handle the error and retry the
    // registration later.
    return;
  }
  // Send the registration token to your application server.
  sendRegistrationId(function(succeed) {
    // Once the registration token is received by your server,
    // set the flag such that register will not be invoked
    // next time when the app starts up.
    if (succeed)
      chrome.storage.local.set({registered: true});
  });
}
function sendRegistrationId(callback) {
  // Send the registration token to your application server
  // in a secure way.
}
chrome.runtime.onStartup.addListener(function() {
  chrome.storage.local.get("registered", function(result) {
    // If already registered, bail out.
    if (result["registered"])
      return;
    // Up to 100 senders are allowed.
    var senderIds = ["Your-Sender-ID"];
    chrome.gcm.register(senderIds, registerCallback);
  });
});

我知道我们必须使用chrome.gcm.register来注册我们的应用程序,但他们没有提到如何获得令牌。chrome.gcm.register方法是否会返回可用作注册令牌的内容?请帮帮我!

PS:可用的教程已经过时了。如果有人有任何更新的教程/示例,请告诉我。

您的回调:

function registerCallback(registrationId) {

将被调用并将注册 ID 传递给它。在那里,您可以将其保存到本地存储或做任何您想做的事情。