5款用來開發(fā)iOS應(yīng)用的Java開源工具
蘋果iOS系統(tǒng)的封閉性一直廣為其他語言(如Java)開發(fā)者詬病,但隨著第三方工具的不斷壯大,開發(fā)人員逐漸擺脫政策束縛,開始使用自己熟悉的語言來編寫iOS本地應(yīng)用,或?qū)⑵渌脚_(tái)上的應(yīng)用移植到iOS上。
本文為你介紹5款開源的開發(fā)工具,幫助你使用Java輕松開發(fā)iOS應(yīng)用。
1. Codename One
Codename One是一個(gè)針對(duì)移動(dòng)應(yīng)用開發(fā)者的、開源的、跨平臺(tái)的Java工具,旨在幫助Java開發(fā)者通過單一代碼庫(kù)來針對(duì)所有移動(dòng)平臺(tái)(智能手機(jī)和平板電腦)構(gòu)建本地應(yīng)用,且無需在應(yīng)用性能、功能或開發(fā)簡(jiǎn)易性方面妥協(xié)。該工具是開源的,可免費(fèi)用于商業(yè)用途。
- 通過Codename One,開發(fā)移動(dòng)應(yīng)用只需5步:
- 下載Codename One插件
- 使用Java編寫代碼
- 使用可視化工具設(shè)計(jì)應(yīng)用的外觀
- 使用模擬器測(cè)試應(yīng)用
- 生成本地移動(dòng)應(yīng)用
2. RoboVM
RoboVM可以將 Java 字節(jié)碼編譯成 ARM 或者 x86 平臺(tái)上的原生代碼,應(yīng)用可直接在CPU上運(yùn)行,無需其他解釋器或者虛擬機(jī)。
RoboVM同時(shí)包含一個(gè)Java到Objective-C的橋,可像其他Java對(duì)象一樣來使用 Objective-C對(duì)象。且支持大多數(shù)UI Kit,將來會(huì)支持更多的框架。
RoboVM基于 GPLv2 許可協(xié)議。
3. XMLVM
XMLVM項(xiàng)目的目標(biāo)是提供一種靈活的可擴(kuò)展的交叉編譯器工具鏈。XMLVM基于Sun的JVM和微軟的CLR(公共語言運(yùn)行時(shí))上的字節(jié)碼進(jìn)行交叉編譯,而非源碼。
通過XMLVM,你可以輕松將Java代碼編譯為Objective-C,在iOS平臺(tái)上運(yùn)行。
4. J2ObjC
J2ObjC(Java to Objective-C)是谷歌出品的一個(gè)開源的命令行工具,旨在使開發(fā)者基于Java編寫的非UI代碼(如數(shù)據(jù)訪問、應(yīng)用程序邏輯等),可以在Web應(yīng)用(使用GWT開發(fā))、Android應(yīng)用和iOS應(yīng)用之間共享。
不過J2ObjC并沒有提供任何形式的獨(dú)立于平臺(tái)的UI工具包,iOS應(yīng)用的界面仍需要使用Objective-C/C++和iOS SDK來開發(fā)。
5. Avian
Avian出現(xiàn)在這里似乎有點(diǎn)不合適,因?yàn)樗鼪]有解決Java轉(zhuǎn)iOS的具體問題。但是,Avian是一個(gè)輕量的JVM,其中包含了一個(gè)工具,可以將Java字節(jié)碼轉(zhuǎn)換為能夠運(yùn)行在ARM設(shè)備(如iPhone)上的本地二進(jìn)制文件。
你可以參考Github上的這個(gè)示例。
以上是5款對(duì)于Java開發(fā)者來說非常實(shí)用的iOS開發(fā)工具,關(guān)于這些工具的比較可以參閱英文原文。
原文鏈接:http://www.javaworld.com/javaworld/jw-03-2013/130327-open-source-java-iphone-tools-compared.html