推送:无法获取 GCM 项目编号,运行 "ionic config set gcm_key your-gcm-id"
PUSH: Unable to get GCM project number, run "ionic config set gcm_key your-gcm-id"
我无法向 android 发送推送通知。
我更新到最新的 ionic 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
并用我的项目 ID 替换了 'your-gcm-id'。
但我仍然收到这条消息:
PUSH: Unable to get GCM project number, run "ionic config set gcm_key your-gcm-id"
当我尝试注册离子通知时,我还得到:
$ionicPush:REGISTER_ERROR org.json.JSONObject cannot be cast to java.lang.String
打开 .io-config.json
文件并在 gcm_key
值两边加上引号。之后尝试你的命令。
参见 this link
希望它的工作。
所以基本上问题是 Ionic 框架有一些变化:)
首先,像 ionic-push 和 core 这样的一些库被删除了,应该使用 'ionic-platform-web-client' 来代替所有其他库。
为了能够安装它,您应该将 ionic cli 更新到最新版本。
(不要忘记从您的 index.html 中删除指向 ionic core 和 ionic push 的链接)
注册码本身也改变了,你不再等待事件,你应该使用下面的代码:
$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
如果您无法使用
安装推送通知插件
ionic 插件添加 phonegap-plugin-push
尝试使用
安装它
cordova plugin add https://github.com/phonegap/phonegap-plugin-push
删除插件尤其是 ionic core 后 - 确保 运行
ionic 配置构建
在 Android 的 Ionic documentation 之后,您必须 运行 命令:
ionic config set gcm_key <your-gcm-project-number>
为了将projectNumber
添加到.io-config.json
您似乎在使用发件人 ID 而不是服务器密钥。 ionic配置的gcm_key
是指firebase提供的server-key
。您可以使用
ionic config set gcm_key <your-gcm-project-number>
或将值 server-key
添加到文件 .io-config.json
中的键 gcm-key
,您可以在离子项目目录中找到该文件。
我无法向 android 发送推送通知。 我更新到最新的 ionic 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
并用我的项目 ID 替换了 'your-gcm-id'。
但我仍然收到这条消息:
PUSH: Unable to get GCM project number, run "ionic config set gcm_key your-gcm-id"
当我尝试注册离子通知时,我还得到:
$ionicPush:REGISTER_ERROR org.json.JSONObject cannot be cast to java.lang.String
打开 .io-config.json
文件并在 gcm_key
值两边加上引号。之后尝试你的命令。
参见 this link
希望它的工作。
所以基本上问题是 Ionic 框架有一些变化:)
首先,像 ionic-push 和 core 这样的一些库被删除了,应该使用 'ionic-platform-web-client' 来代替所有其他库。
为了能够安装它,您应该将 ionic cli 更新到最新版本。
(不要忘记从您的 index.html 中删除指向 ionic core 和 ionic push 的链接)
注册码本身也改变了,你不再等待事件,你应该使用下面的代码:
$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
如果您无法使用
安装推送通知插件ionic 插件添加 phonegap-plugin-push
尝试使用
安装它cordova plugin add https://github.com/phonegap/phonegap-plugin-push
删除插件尤其是 ionic core 后 - 确保 运行
ionic 配置构建
在 Android 的 Ionic documentation 之后,您必须 运行 命令:
ionic config set gcm_key <your-gcm-project-number>
为了将projectNumber
添加到.io-config.json
您似乎在使用发件人 ID 而不是服务器密钥。 ionic配置的gcm_key
是指firebase提供的server-key
。您可以使用
ionic config set gcm_key <your-gcm-project-number>
或将值 server-key
添加到文件 .io-config.json
中的键 gcm-key
,您可以在离子项目目录中找到该文件。