我一直在尝试使用Ionic推送通知,一切顺利,直到我必须存储我收到的设备令牌。我一直在关注教程给我的每一步,所以我在项目中看不到任何错误的代码。
这是我的注册码:
// kick off the platform web client
Ionic.io();
var push = new Ionic.Push();
// this will give you a fresh user or the previously saved 'current user'
var user = Ionic.User.current();
// if the user doesn't have an id, you'll need to give it one.
if (!user.id) {
user.id = Ionic.User.anonymousId();
}
var callback = function (data) {
console.log('Registered token:', data.token); // is not empty
console.log(data.token);
push.addTokenToUser(user);
user.save();
}
push.register(callback);
我收到以下错误:
Ionic Push Token: dev tokens cannot be saved to a user as they are a temporary resource: ionic.io.bundle.min.js (2,5965).
当我试图执行时:
push.addTokenToUser(user);
我实际上期待我的设备令牌存储在那里。但事实并非如此......
我希望你们中的一些人之前已经看过这个问题并且可以帮助我。
问候!
答案 0 :(得分:1)
我遇到了这个问题,直到我发现我使用旧版的cordova(第4版)。低于v.5的任何东西都不适用于Ionic(当前Cordova版本在写作时为6.0.0)。
npm update -g cordova
之后所有事情都有记录。
答案 1 :(得分:0)
将Ionic置于生产模式,因此它使用您上传的证书。 (但仍然在设备的开发模式下)
$ ionic push --production-mode = n