1

我想在智能手机应用程序和网站之间传输数据。有哪些传统和不那么传统的做法?

到目前为止,这是我的想法:

  1. 简单的 HTTP GET/POST 数据被表示为 JSON 数组字符串,其变体被加密/压缩字符串作为参数。
  2. Web服务调用(我不确定这是否可能,只是猜测)
  3. 两步通信:智能手机往返桌面应用程序往返网站)(开发/使用繁琐)

另外,我需要考虑什么来避免垃圾邮件/窥探?

4

3 回答 3

1

我认为前两个几乎相同。如果您要发送大量数据,您想要做的是 HTTP Post,或者如果数据量较少,您想要做的是带有查询字符串的 GET。这一切都将是未加密的传输,因此在使用 HTTP 时请记住这一点。

于 2008-11-13T19:20:39.950 回答
1

如果您的目标是令人信服、安全和易于开发。我会让客户端(电话)使用 POST 通过 HTTPS 向服务器发出请求。发送的数据应该是您的目标系统可用的任何库。不错的选择是 URL 编码参数、XML 和 JSON。避免使用二进制协议。

这种方法的缺点是使用从设备到 Web 服务的网络连接可能不可用或价格昂贵,这取决于用户的计划。(随着当前的智能手机浪潮(iPhone/gPhone/Blackberry 等),这种情况变得越来越少)这也是一个轮询接口,因此将数据从服务器推送到手机是很棘手的,并且依赖于用户发起一些操作。

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

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

于 2008-11-13T19:21:12.163 回答
1

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

于 2008-11-13T19:23:12.457 回答