我已经使用cordova和jquery成功构建了android应用程序。
现在我想开始推送通知部分,我正在cordova-plugin-firebase
的帮助下完成。但是要向特定设备发送通知,我需要其令牌ID或设备ID,并获得我使用的代码。
window.FirebasePlugin.getToken(function(token) {
// save this server-side and use it to push notifications to this device
console.log(token);
}, function(error) {
console.error(error);
});
我尝试了许多认为对我不起作用,我无法检索令牌ID。 任何人都可以告诉我如何从cordova中的设备中检索令牌ID。
获取令牌ID后如何将此保存到firebase或者我应该将其保存到我的服务器,如果我这样做,那么如何将保存的数据(在我的服务器上)链接到firebase。
答案 0 :(得分:0)
您可以使用插件OneSignal它是免费的
要将插件添加到项目中: cordova插件添加onesignal-cordova-plugin Official Website
将 index.js 添加到您的项目中并包含在 index.html 中,就像这样
var app = {
initialize: function() {
document.addEventListener('deviceready', function () {
window.plugins.OneSignal.enableNotificationsWhenActive(true);
var notificationOpenedCallback = function(jsonData) {
console.log('notificationOpenedCallback: ' + JSON.stringify(jsonData));
};
window.plugins.OneSignal
.startInit("Here add your id Go to your dashboard in onesignal")
.handleNotificationOpened(notificationOpenedCallback)
.endInit();
}, false);
this.bindEvents();
},
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
onDeviceReady: function() {
app.receivedEvent('deviceready');
},
receivedEvent: function(id) {
var parentElement = document.getElementById(id);
var listeningElement = parentElement.querySelector('.listening');
var receivedElement = parentElement.querySelector('.received');
listeningElement.setAttribute('style', 'display:none;');
receivedElement.setAttribute('style', 'display:block;');
console.log('Received Event: ' + id);
}
};
第二步:
转到信息中心=>所有用户:在这里您使用设备ID获取所有用户 - 名称设备 - 平台 - 上次会话
第三步:
您可以通过ID设备或所有用户向用户发送特定消息
如果您想获得玩家ID并在基础上保存您的更多信息,请阅读此文档...:click here