我无法向Android发送推送通知。 我更新到最新的离子cli 我更新到最新的离子库 之后也做了:
ionic config build
和
ionic prepare android
我的io-config.json有
{"app_id":"01e6d3ad","api_key":"some_secret_key","gcm_key":"142738311658"}
我已经好几次ionic config set gcm_key your-gcm-id
取代了你的gcm-id'我的项目ID。
但我仍然收到这条消息:
PUSH: Unable to get GCM project number, run "ionic config set gcm_key your-gcm-id"
当我尝试注册离子通知时,我也得到:
$ionicPush:REGISTER_ERROR org.json.JSONObject$1 cannot be cast to java.lang.String
答案 0 :(得分:1)
在Android的Ionic documentation之后,您必须运行命令:
ionic config set gcm_key <your-gcm-project-number>
要将projectNumber
添加到 .io-config.json
答案 1 :(得分:0)
答案 2 :(得分:0)
所以基本上问题是Ionic框架有一些变化:)
首先,对离子推送和核心等一些库进行了描述,而不是“离子 - 平台 - 网络 - 客户端”。应该用来取代所有其他的。
为了能够安装它,您应该将离子cli更新到最新版本。
(不要忘记从index.html中删除离子核心和离子推送的链接)
此外,注册码本身已更改,您不再等待事件,而应使用以下代码:
$ionicPlatform.ready(function() {
Ionic.io();
var push = new Ionic.Push({
"debug": true
});
push.register(function(token) {
console.log("Device token:",token.token);
});
});
可能会遇到问题的人还有几点:
确保在cordova.js之后包含PushNotification.js
如果您无法使用
安装推送通知插件离子插件添加phonegap-plugin-push
尝试使用
进行安装cordova plugin add https://github.com/phonegap/phonegap-plugin-push
- 确保运行
ionic config build
答案 3 :(得分:0)
您似乎使用的是发件人ID而不是服务器密钥。 gcm_key
离子配置是指firebase提供的server-key
。你可以使用
ionic config set gcm_key <your-gcm-project-number>
或将值server-key
添加到您可以在离子项目目录中找到的文件gcm-key
中的密钥.io-config.json
。