2012-03-16 82 views
2

據我所知,目前沒有JAXB實現可以在Android平臺上運行。Android的JAXB實現中是否需要?

我想問一個簡單的問題 - 是否有需要JAXB在Android?

作爲一名JAXB愛好者,我考慮爲Android編寫一個JAXB實現。我可能不會移植JAXB RI,因爲它對移動應用程序來說太肥了,我寧願從頭開始編寫它。我寫了一個JAXB port for JavaScript,所以我知道這是可以管理的。

但你們是否需要它?或者你喜歡SimpleXML等其他工具嗎?

回答

3

作爲一名Android開發人員,他在幾乎所有開發的應用程序中都進行了大量的XML和JSON解析和構建,我的答案是:不,在Android上不需要JAXB。其他工具完美符合法案。要麼是這樣,要麼我們的Android開發人員已經習慣了缺乏JAXB,並且我們每個人都已經習慣了其中一種選擇。

就我而言,我甚至通過在服務器上用我最喜歡的Android XML序列化庫替換JAXB來實現代碼重用。

+3

如果您使用需要JAXB的庫,該怎麼辦?我們是否應該重寫那個庫?並且當圖書館發佈安全漏洞修復程序時,讓我們的叉子保持最新狀態?我的編程時間有更多有用的問題需要解決。 – 2013-03-04 14:04:26

2

JAXB似乎幾乎是在Android上的事情。至少,如果this question thread的內容是可信的。

似乎需求量很大,因爲Dalvik虛擬機無法支持依賴反射的JAXB組件。所以,畢竟這可能是有用的。 :)

+0

我覺得那個線程指出JAXB實際上是不支持Android的,或者我錯了嗎? – lexicore 2012-03-23 08:18:21

+0

它沒有預裝Android,但該線程表示可以將它載入您的[APK](http://en.wikipedia.org/wiki/APK_(file_format))。複雜性:進一步下降,並且在谷歌各地,Dalvik虛擬機無法處理反射組件的投訴有很多種創新。因此,第二個想法是:即使標準庫在某種程度上被使用,至少一個在Android中工作的_tutorial_和一個罐頭實現似乎也非常需要。 :) – MrGomez 2012-03-23 08:30:38

+0

請參閱http://www.docx4java.org/blog/2012/05/jaxb-can-be-made-to-run-on-android/瞭解如何使參考實現在Android上運行。 – JasonPlutext 2012-05-18 01:50:18

2

事實證明,JAXB並非由Android本機支持。另一種方法是包括圖書館並使用它,但這會招致大量浪費資源(JAXB圖書館非常大)。

在快速搜索中,IBM Developerworks發現了一篇有趣的文章。我瀏覽了文檔。我認爲這個圖書館不像JAXB那樣強大或多功能,但它應該適合大多數意圖和目的的賬單。而且,它本身是由Android支持的,因此應該是合理高效的。

鏈接到文件是: http://www.ibm.com/developerworks/opensource/library/x-android/

有哪些值得高度許多建議另一個庫。 SF的鏈接是:http://sourceforge.net/projects/simple/ 這個拉鍊包只重2.5M,這意味着它的重量很輕。

+0

我並不是真的在尋找JAXB的替代品。我的問題是,具體來說,如果JAXB實現Andorid是人們喜歡的東西。 – lexicore 2012-03-25 23:30:38

8

lexicore有需要JAXB在Android上,SimpleXML的是偉大的,我把它喜歡JAXB在某些方面,但是JAXB是一個標準,被廣泛使用。

,這將是真正偉大的一個有用的例子是,如果一個Android應用程序可以共享一個裝滿的JAXB POJO的與EE應用程序和REST風格調用的應用程序EE使用這些。

+0

我重新包裝了JAXB RI。 Android不支持包註釋,因此需要採取以下解決方法:http://code.google.com/p/android/issues/detail?id=16149 – JasonPlutext 2012-05-14 08:21:08

1

JAXB參考實現需要大約3.5MB的空間,並使用Android中缺少的功能。因此,Android兼容的實現將更大,因爲它需要額外提供這些功能的實現。

大量Android手機的內部存儲空間不足40MB或更少。這就是OEM版本,在網絡通過添加額外的應用程序和無法卸載的免費試用「定製」它們之前。只要你希望擁有這些手機的人安裝你的應用程序,那麼你就不會想這麼大。而大多數應用程序開發人員希望他們的應用程序儘可能廣泛地使用。因此,在我看來,對Android實施大型圖書館感興趣的人數將非常有限。

+0

我的JavaScript的JAXB端口爲ca. 140KB。註釋和反思絕對是一個問題,但我認爲它可以通過特殊的XJC插件來解決。一般來說,我剛剛得出的結論是,這項工作不值得。 – lexicore 2013-04-16 21:38:25

相關問題