我想在智能手机应用和网站之间传输数据。这样做的常规和不那么传统的方法是什么?

这是我到目前为止所想到的:

  1. 简单HTTP GET / POST,数据表示为JSON数组字符串,其变体为加密/压缩字符串作为参数。
  2. 网络服务电话(我不确定这是否可能,只是一个猜测)
  3. 两步通讯:智能手机往返桌面应用程序来回网站)(开发/使用繁琐)
  4. 另外,我需要考虑什么来避免垃圾邮件/窥探?

有帮助吗?

解决方案

如果您的目标是说服力,安全性和易于开发。我有客户端(电话)使用POST通过HTTPS向服务器发出请求。发送的数据应该是您的目标系统可用的库。好的选择是URL编码参数,XML和JSON。避免使用二进制协议。

这种方法的缺点是,使用用户拥有的计划,使用从设备到Web服务的网络连接可能不可用或昂贵。 (目前的智能手机浪潮(iPhone / gPhone / Blackberry等)正变得越来越少) 这也是一个轮询界面,因此将数据从服务器推送到手机非常棘手,并且取决于用户启动某些操作。

根据手机平台的不同,您还可以使用短信进行双向通信。这里的限制是隐私,带宽和成本。根据用户计划发送ip数据的SMS更加昂贵。 (有时候接收)通过在电话应用程序中注册SMS挂钩来执行双向技巧。因此,当收到某个SMS时,可以自动启动并通知应用程序。

请发布其他信息,例如目标平台,我可以讨论更多选项。

其他提示

我认为前两个几乎是一回事。如果要发送大量数据,则要执行的是HTTP Post;如果数据量较小,则需要执行带有查询字符串的GET。这一切都将是未加密的传输,因此在使用HTTP时请记住这一点。

如果您正在使用.NET Compact Framework并为Windows Mobile开发,最简单的方法是使用Web服务。但是,.NET Web服务将所有内容序列化为详细的XML,这使得来回发送的数据的大小大于它必须的大小。使用JSON是减少数据大小的好方法,即使使用.NET Web服务(诀窍是将整个JSON文档作为单个参数发送)。最小化传输数据的大小对于智能手机应用程序尤为重要,因为您的数据传输可能通过蜂窝网络完成。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top