推送通知不是第一次收到

尼萨尔

我正在将推送通知从节点服务器发送到iPhone和Android。它已成功发送到APNS / GCM,并成功接收到移动设备的通知。但是,在iPhone 6中,推送通知在收到通知后才第一次收到。它发生在以下阶段:

  1. 安装应用程序并首次打开。
  2. 如果不再使用该应用程序。

提前致谢..

尼萨尔

苹果在《本地和推送通知编程指南》和《对推送通知进行故障排除》中说

通知的传递是“尽力而为”,不能保证。它并非旨在将数据传递到您的应用程序,仅用于通知用户有可用的新数据。

更新:

问题在于,Apple无法处理消息时会关闭连接。因此,如下更新了节点推送通知server.js中的代码,它可以正常运行:

var connectCallback = function (err) {
  // gracefully handle auth problems
  if (err && err.name === 'GatewayAuthorizationError') {
    console.log('Authentication Error: %s', err.message);
    process.exit(1);
  }

  // handle any other err (not likely)
  else if (err) {
    throw err;
  }

  // it worked!
  var env = agent.enabled('sandbox')
    ? 'sandbox'
    : 'production';

  console.log('apnagent [%s] gateway connected', env);
};

agent.connect(connectCallback);

setInterval(function(){
  agent.close(function(param1){
    agent.connect(connectCallback);
  });
}, 20 * 60 * 1000);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

gcm推送通知:第一次成功,然后未在IOS中注册

来自分类Dev

解析推送第一次无法加载通知图标

来自分类Dev

第一次推送时新的git仓库错误

来自分类Dev

删除分支的第一次推送提交

来自分类Dev

UITableView需要双击-但不是第一次

来自分类Dev

UITableView需要双击-但不是第一次

来自分类Dev

Nodegit创建远程存储库并进行第一次推送

来自分类Dev

第一次导航后,React Router不会渲染推送的页面

来自分类Dev

React Native Navigator-路由直到第一次导航推送后才渲染?

来自分类Dev

Django Heroku 推送在第一次后因 Grep 使用错误而失败

来自分类Dev

第一次推送到数组后,Angular 不会绑定转发器

来自分类Dev

处理关闭的android设备(问题:仅在第一次收到该意图)

来自分类Dev

在ViewModel上收到的单选选项始终为null,但第一次选择除外

来自分类Dev

处理关闭的android设备(问题:仅在第一次收到该意图)

来自分类Dev

React 子组件在第一次加载时不会收到道具

来自分类Dev

即使在第一次同意时也没有收到“刷新令牌” - Google API

来自分类Dev

第一次接触被忽略?

来自分类Dev

第一次击球太快

来自分类Dev

第一次通过成语

来自分类Dev

广度第一次迭代?

来自分类Dev

第一次流浪失败

来自分类Dev

第一次安装Ubuntu

来自分类Dev

第一次链接功能

来自分类Dev

第一次运行jstree

来自分类Dev

广度第一次迭代?

来自分类Dev

动画是第一次

来自分类Dev

第一次接触被忽略?

来自分类Dev

HTTPAsyncClient第一次跳过

来自分类Dev

第一次使用Mockito