gpt4 book ai didi

javascript - 无法在 Android 中使用 ngCordova 获取推送通知

转载 作者:数据小太阳 更新时间:2023-10-29 04:11:31 26 4
gpt4 key购买 nike

我很难让推送通知(使用 ngCordova 插件)正常工作。我完全按照网站上记录的示例代码进行操作:http://ngcordova.com/docs/plugins/pushNotifications/

(唯一的区别是我没有 deviceready 监听器,相反,我的代码在 ionicPlatform.ready 监听器中。)

这是我的代码:

angular.module('myApp', ['ionic', 'ngCordova'])
.run(function($ionicPlatform, $rootScope, $state, $cordovaPush) {
$ionicPlatform.ready(function() {
var config = {
"senderID": "myID100001000"
};

$cordovaPush.register(config).then(function(result) {
alert(result);
}, function(err) {
alert(err);
})
});

$rootScope.$on('$cordovaPush:notificationReceived', function(event, notification) {
switch(notification.event) {
case 'registered':
if (notification.regid.length > 0 ) {
alert('registration ID = ' + notification.regid);
}
break;

default:
alert('An unknown GCM event has occurred');
break;
}
});
})

当我的应用程序启动时,我会收到“OK”警报,因此我知道它已成功通过 $cordovaPush.register 调用。但是,我期待在之后立即收到“已注册”通知事件,但我从未收到通知。

如有任何帮助,我们将不胜感激。

最佳答案

解决方案在评论中,但这需要一个正确的答案。

首先,只要您传递一个senderIDregister回调总是返回OK,但是如果$cordovaPush :notificationReceived 事件从未被调用(可能需要几秒钟),这个 ID 可能是错误的。

必须使用项目编号,而不是项目 ID。

要获取编号,请转至 API Console ,选​​择项目,然后您将进入概览 页面。在此页面顶部,您会看到如下内容:

Project ID: your-project-id        Project Number: 0123456789

只需复制并使用项目编号,一切正常。

关于javascript - 无法在 Android 中使用 ngCordova 获取推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28202565/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com