Ionic framework 离子推送通知:未捕获引用错误:未定义推送通知
你好,我是爱奥尼亚的新手。 我想为android手机使用离子推送通知 我听从了老师的指示 为了进行调试,我键入了Ionic framework 离子推送通知:未捕获引用错误:未定义推送通知,ionic-framework,ionic,Ionic Framework,Ionic,你好,我是爱奥尼亚的新手。 我想为android手机使用离子推送通知 我听从了老师的指示 为了进行调试,我键入了ionic service 我看到 “未捕获引用错误:未定义推送通知” 在Chrome控制台中 当然,通知不起作用 我错过了什么? 任何评论都会很有帮助。谢谢 以下是我所做的 我已在终端中输入以下代码 ionic add ionic-platform-web-client ionic plugin add phonegap-plugin-push ionic io init 我的
ionic service
我看到
“未捕获引用错误:未定义推送通知”
在Chrome控制台中
当然,通知不起作用
我错过了什么?
任何评论都会很有帮助。谢谢
以下是我所做的
我已在终端中输入以下代码
ionic add ionic-platform-web-client
ionic plugin add phonegap-plugin-push
ionic io init
我的爱奥尼亚配置信息
dev_push is false,
There is 'app_id'
There is 'api_key'
There is 'gcm_key'
NodeJS
v5.2.0(我也尝试过v4.2.2)
离子型cli
v1.7.12
下面的代码位于$ionicPlatform.ready
var io = Ionic.io();
var user = Ionic.User.current();
if (!user.id) {
user.id = Ionic.User.anonymousId();
};
// Just add some dummy data..
user.set('name', 'moka');
user.set('bio', 'This is my little bio');
user.save();
var push = new Ionic.Push({
"onNotification": function(notification) {
alert('Received push notification!');
},
"pluginConfig": {
"android": {
"iconColor": "#0000FF"
}
}
});
var callback = function(data) {
push.addTokenToUser(user);
user.save();
};
push.register(callback);
//编辑 我改变了形式
ionic config set dev_push false
到
它不再显示
“未捕获引用错误:未定义推送通知”
但我不确定这是否正确。
因为它是写在
关闭您的开发模式
因此,如果我想在真正的android设备上测试,“未捕获引用错误:未定义PushNotification”并不重要。不,这不重要
事实上,正如您所提到的,在实际设备中测试时,dev_push必须为false
您可以手动将其设置为false
ionic config set dev_push false
,也可以不在任何地方提及它(默认为false):Cordova&Phonegap插件仅在模拟器和设备上工作。他们不会在任何broswers上工作
虽然使用Ionic可以使这些错误静音,但一个好的做法可能是将代码包装成这样:
if (typeof PushNotification === "defined") {
// your code here
}
这样,在编写BDD或E2E测试时,它不会抛出任何错误
您还可以将代码添加到:
document.addEventListener("deviceready", function () {
}
我可以通过以下方式修复此错误:
爱奥尼亚删除爱奥尼亚平台web客户端
cordova插件移除phonegap插件推送
爱奥尼亚添加爱奥尼亚平台web客户端
if (typeof PushNotification === "defined") {
// your code here
}
document.addEventListener("deviceready", function () {
}