2008-09-17 139 views
3

我有一個Java後端需要公開服務,以在以下環境中運行的客戶端:什麼是移動應用程序的最佳遠程技術?

  • J2ME
  • 的Windows Mobile
  • iPhone

我正在尋找最好的每個平臺的工具。
我不搜索可以在任何地方工作的技術。
我需要一些適合低速互聯網接入的「光線」。

現在我正在使用SOAP。這是漫長的,不容易解析的移動。問題是我還沒有看到任何真正的選擇。

有沒有一種格式可以在這些平臺之一上「開箱即用」?
我寧願不使用臃腫的庫,這會大大增加應用程序的下載時間。

大家似乎都同意JSON。有沒有人已經實現了基於JSON與Objective-C,J2ME,Windows Mobile一起運行的解決方案?

注意:到目前爲止,最好的解決方案似乎是Hessian。它適用於Windows Mobile和Objective-C/iPhone。最大的問題是J2ME。 Hessian的J2ME實現有嚴重的侷限性。它不支持複雜的對象。我已經寫了另一個關於它的問題。

如果您有任何想法,非常歡迎。

回答

5

粗麻布。 http://hessian.caucho.com。以多種語言(包括ObjC)實現,超輕量級,並且不需要依賴dom/xml分析器從線到對象模型進行轉換。一旦我們發現了Hessian,我們就忘記了我們曾經認識的XML。

9

JSON相當緊湊,並且得到大多數框架的支持。您可以使用標準的REST技術通過HTTP傳輸數據。

Java,Objective Cmany other languages(向下滾動)的JSON庫。在服務器端查找框架支持應該沒有問題,因爲JSON用於Web應用程序。

舊的替代方案包括純XML和XML-RPC(如SOAP,但要簡單得多,並且對於大多數語言都有庫)。

+0

哼...有沒有簡單的方法來解析JSON與J2ME/WindowsMo​​bile/Cocoa? – 2008-09-17 12:49:18

+0

那麼,Java和Object C版本將在J2ME和Cocoa上運行。 Windows Mobile使用哪種語言? JSON網站上有六種基於C++的框架,列在頁面底部。 – emk 2008-09-17 12:55:36

2

REST + XML或JSON將是一個很好的選擇。它在RIA世界取得了巨大的進步,它的優點在於它的簡單性。這是非常容易使用,無需任何特殊的工具。 SOAP具有很強的優點,但它在支持強大工具的環境中效果最佳。我從你的問題猜測,情況並非如此。

1

簡單的舊XML(有點不幸稱爲POX)如何?

另一個非常有用的選項是JSON。那裏有每種編程語言的庫。

可能是因爲您在一個受計算和網絡資源以及靜態類型語言限制的環境中工作,所以Google的protocol buffers會更適合您。 (只是忽略了那裏的RPC粗糙; RPC是一個有吸引力的麻煩,而不是一個有用的技術。)

問題與你的問題是,你沒有提供一個關於這是什麼樣的數據和你的用例是什麼的上下文的很多上下文,所以很難說任何東西,但很模糊的概括。

2

借調JSON。我將portedStringtree JSON reader發送到J2ME。它是一個單類JSON閱讀器,編譯成5KB的類文件,並直接將JSON結構映射到本地CLDC類型,如Hashtable和Vector。現在我可以爲我的桌面瀏覽器AJAX前端和我的J2ME客戶端使用同一臺服務器。

相關問題