GCM を使用して、ユーザーのブラウザーに通知を送信しました。使用した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);
});
});
私の拡張機能は GCM との接続を取得しており、ユーザーのブラウザーに通知を送信しています。私の質問は、ユーザーが拡張機能をアンインストールするときに GCM トークンを登録解除する方法です。Chrome 拡張機能にはアンインストール イベントはありません。Chrome拡張機能でGCM接続コードの登録解除をどこに書くべきか教えてください。
拡張機能 (background.js、contentscript.js) でこのコードを記述する場所。
function unregisterCallback() {
if (chrome.runtime.lastError) {
// When the unregistration fails, handle the error and retry
// the unregistration later.
return;
}
}
chrome.gcm.unregister(unregisterCallback);