【问题标题】:Can my server send data to my iphone / android app proactively?我的服务器可以主动向我的 iphone / android 应用程序发送数据吗?
【发布时间】:2016-02-13 18:39:12
【问题描述】:

我是移动开发领域的新手,有一个非常基本的问题我似乎找不到答案。这是场景。

我有一个移动应用程序。该应用程序连接到我拥有的服务器。要使用移动应用程序,用户必须使用唯一凭据登录。现在假设我的服务器上有某些事件,我想通知特定的移动应用程序用户。我的服务器能否主动向特定的移动应用实例发送信号/数据(可能使用会话数据),以便在其屏幕上显示通知?

不允许/不可行通过移动应用程序轮询服务器以查找此类事件。

【问题讨论】:

  • 这个实在是太模糊了。你搜索了什么,你尝试了什么?每个主要设备都有推送通知,此外它还取决于您的服务器所基于的结构。即 nodejs 在实时数据传输方面有一些不错的承诺,有 ajax,meteor。名单还在继续
  • 好吧,我确实查看了推送通知,但无法确定是否可以将此类通知发送给应用程序的特定用户而不是所有用户。

标签: android ios mobile


【解决方案1】:

我可以谈谈 iOS 解决方案。 Android 肯定有非常相似的功能。

有两种方法可以做到这一点:

  1. 静默推送通知
  2. 后台提取

可以,嗯,在不提醒用户的情况下将静默推送通知推送到设备。这意味着在收到通知后,应用程序可以开始从您的服务器下载它需要的内容。您需要设置适当的背景才能正常工作。否则,通知将被排队,只有在用户下次打开您的应用时才会生效。启动here 以获取推送通知。您发送的有效负载是控制通知的内容。

后台获取是您的 iOS 应用程序被操作系统 (iOS) 定期唤醒以允许您执行任务的过程。此任务可以从服务器或您想要的任何其他内容中获取数据。这可能是 2 个解决方案中最好的一个,因为不能保证收到推送通知,这让每个设备都有责任获取自己的数据,而不是创建一个完整的后端系统来执行推送通知。启动 here 进行后台提取。

【讨论】:

  • APNS 是一个好方法,但我的开发人员告诉我,从 Apple 获取设备令牌是一个漫长的过程,需要很长时间。这是真的吗?
  • 您可以在很短的时间内启动并运行 APNS,看看这个答案:stackoverflow.com/questions/8798725/…
  • 我们正在使用 Parse,parse.com,您可以在不到一个小时的时间内启动并运行 APNS。
【解决方案2】:

在您谈论的每个平台上查找推送通知。

另外看看一些实时网络应用程序,想到的两个是 meteor.comnodejs

【讨论】:

    【解决方案3】:

    您的意思是推送通知之类的东西?您可以阅读本教程(或 google 上的任何其他教程),了解如何在您的应用中实现推送通知:

    http://www.vogella.com/tutorials/AndroidCloudToDeviceMessaging/article.html

    【讨论】:

      猜你喜欢
      • 2019-02-19
      • 1970-01-01
      • 1970-01-01
      • 2019-03-30
      • 1970-01-01
      • 2012-02-09
      • 1970-01-01
      • 2011-12-07
      • 2017-12-28
      相关资源
      最近更新 更多