0

我有一个继承的 Ionic 框架应用程序,它使用 Ionic.io 该应用程序针对我们的 API 进行授权,并获得一个 API 令牌以在未来的请求中使用。

我正在尝试处理推送通知 - 我已经设置了离子推送,并且可以毫无问题地向所有用户触发推送通知。

我希望能够针对特定用户/设备发送通知,并且我知道要做到这一点,我必须注册设备以生成令牌。

在我的 $ionicPlatform.ready 函数中,我有:

$ionicPush.register().then(function(t) {
    return $ionicPush.saveToken(t);
}).then(function(t) {
  console.log('Token saved:', t.token);
});

然而,这似乎并没有返回一个令牌,并调用

控制台.log($ionicPush); 表示未设置令牌。

这里有什么想法吗?我错过了什么?

4

1 回答 1

1

因此,在挖掘了一些文档之后,我发现该问题与 ionic 用户有关。

在主运行功能中,我启动了一个

 if ($ionicAuth.isAuthenticated()) {

如果失败,我会尝试登录用户,并在适当的情况下注册用户。(用户已经针对我们的 api 使用自定义身份验证令牌登录)

在我尝试注册令牌之前,我必须重新加载用户以便让应用程序保存并推送回 ionic.io。

 $ionicUser.load().then(function() {
    $ionicPush.register().then(function(t) {
        console.log('Token sent:', t.token);
        return $ionicPush.saveToken(t);
    }).then(function(t) {
      console.log('Token saved:', t.token);
    });
});
于 2017-02-20T09:21:41.340 回答