什么是移动应用程序的最佳远程技术?

时间:2008-09-17 12:41:02

标签: java iphone windows-mobile java-me mobile

我有一个java后端,需要向在以下环境中运行的客户端公开服务:

  • J2ME
  • Windows Mobile
  • iPhone

我正在寻找每个平台的最佳工具 我不会搜索到处都有效的技术 我需要一些适合低速互联网接入的“光”。

现在我正在使用SOAP。它是冗长的,并不容易在移动设备上解析。问题是我没有看到任何真正的替代方案。

是否存在与这些平台之一“开箱即用”的格式?
我宁愿不使用膨胀的库,这会极大地增加应用程序的下载时间。

每个人似乎都同意JSON。有没有人实现了基于运行Objective-C,J2ME,Windows Mobile的JSON的解决方案?

注意:到目前为止,最好的解决方案似乎是Hessian。它适用于Windows Mobile和Objective-C / iPhone。最大的问题是J2ME。 Hessian的J2ME实现具有严重的局限性。它不支持复杂的对象。我写了另一个关于它的问题。

如果您有任何想法,我们非常欢迎您。

5 个答案:

答案 0 :(得分:9)

JSON相当紧凑,并且受大多数框架的支持。您可以使用标准REST技术通过HTTP传输数据。

JavaObjective Cmany other languages都有JSON库(向下滚动)。您应该在服务器端找到框架支持没有问题,因为JSON用于Web应用程序。

旧的替代方案包括纯XML和XML-RPC(如SOAP,但更简单,并且使用大多数语言的库)。

答案 1 :(得分:5)

Hessian矩阵。 http://hessian.caucho.com。多种语言(包括ObjC)的实现,超轻量级,并且不需要依赖dom / xml解析器来从有线模型转换为对象模型。一旦我们找到了Hessian,我们忘记了我们曾经知道XML。

答案 2 :(得分:2)

REST + XML或JSON将是一个不错的选择。它正在RIA世界取得重大进展,它的美丽在于它的简洁。它非常易于使用,无需任何特殊工具。 SOAP有它的优点,但它在具有强大工具支持的环境中最有效。我猜你的问题并非如此。

答案 3 :(得分:2)

借调JSON。我ported Stringtree JSON reader到J2ME。它是一个单类JSON读取器,可编译成5KB类文件,并直接将JSON结构映射到本机CLDC类型,如Hashtable和Vector。现在,我可以将同一台服务器用于我的桌面浏览器AJAX前端和我的J2ME客户端。

答案 4 :(得分:1)

普通的旧XML(有点不幸地称为POX)怎么样?

另一个非常有用的选项是JSON。每个编程语言都有库。

可能,由于您在一个受计算和网络资源限制的环境中工作,并且使用静态类型语言,因此谷歌的protocol buffers将更适合您。 (只是忽略那里的RPC crud; RPC是一个有吸引力的麻烦,而不是一个有用的技术。)

你的问题的问题在于你没有提供关于这是什么类型的数据以及你的用例是什么的大量背景,所以除了非常模糊的一般性之外,很难用任何其他方式说话。