0

好...

我正在使用移动应用程序和 Web 服务器。

我的 Web 服务器的一个特点是它随机生成不同的数据集。换句话说,我无法预测服务器何时将准备好数据发送到移动应用程序。

另一方面,移动应用程序需要接收服务器生成的所有数据。可以多次请求一种方法来获取所有这些数据。确实,这不是一个好方法,因为我不知道何时请求数据。

例如,如果移动应用程序可以在一个启动请求或保持连接后侦听服务器,则服务器可以随时发送任何一组数据。

问题是:什么协议适合这种情况?我怎么能用那个?例子?

谢谢!

4

2 回答 2

1

您可以创建到服务器的持久 TCP/IP 连接并永久侦听传入数据(使用自定义协议或可能基于 websocket 的东西)。但是,如果用于移动设备,这种永久连接可能会严重影响您的电池寿命。如果操作系统因为内存不足而自动关闭您的应用程序,您也将失去连接。

此问题的默认方法是推送通知/推送服务,您的服务器将有关新数据的通知发送到电话提供商的服务器(例如 Microsoft 或 Apple 推送服务器),然后该服务器发送通知(以及来自其他在线服务)到您的手机。Windows Phone 的一些信息:http: //msdn.microsoft.com/en-us/library/hh221549.aspx http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff402558%28v=vs .105%29.aspx

根据您获得新数据的频率,这两种方法都可能有意义。

于 2013-10-11T20:26:20.840 回答
0

WebSockets 可能是答案:http ://en.wikipedia.org/wiki/WebSocket

具体来说,对于 Windows Phone,还有一个解决方案:http: //msdn.microsoft.com/en-us/library/windowsphone/develop/ff402558 (v=vs.105).aspx

于 2013-10-10T15:23:20.727 回答