摘要:Android平台应用与iOS平台应用由于开发语言不通,让许多希望能够同时登陆两大平台的开发者苦恼不已。但现在,这一切变的简单多了。谷歌日前发布了一款工具J2ObjC,该工具能够通过将Android平台上运行的Java代码转换成iOS平台上可运行的Objective-C代码。

北京时间9月17日消息,谷歌日前发布了一款工具J2ObjC,该工具能够通过将Android平台上运行的Java代码转换成iOS平台上可运行的Objective-C代码,谷歌希望以此来打破两大智能手机平台上的软件应用间的隔阂。

“J2ObjC并不是一款Java模拟器,”谷歌的Tom Ball在一篇发布该工具的文章中写道,“但它能通过将Java类转换成Objective-C类从而直接使用iOS基础框架。”

该工具没有宣称能够完全跨平台编写移动应用程序。它只做一件事,那就是处理后端。利用它转换应用程序的开发者们仍然需要用苹果的iOS SDK在Objective-C中写新的UI代码。

使用J2ObjC,开发人员可以在JAVA中编写他们的核心非UI功能,然后从一个代码库中为Android和iOS分别编译他们的应用版本的那部分,而不是为每个平台都维护一个单独的代码树。

Ball还指出,事实上,开发者还可以使用谷歌Web工具包(GTW)来用相同的Java代码开发基于Web版本的应用,谷歌Web工具包能够将Java代码转换成JavaScript在浏览器中运行。所有这三个版本的应用将拥有相同的核心功能,因为它们是基于相同的源代码建立的。

谷歌表示J2ObjC能够与很多开发工具结合使用,其中包括Xcode和Make,并且,从Java到Objective-C的转换是完全自动化的。该工具输出的Objective-C源代码无需额外的编辑是非常有必要的。

Ball还表示,J2ObjC能够支持完整的Java语言及其许多重要的运行时特性,包括异常、泛型类型、线程、内部类及匿名类等等。它甚至还在Objective-C中建立了Java风格的内存管理模型。在该项目网站上,大家可以看到它能够进行转换的语言完整表单。

为了能够安装使用该系统,开发者需要一台运行Mac OS X 10.7(Lion)及以上版本的计算机,并且需要安装Xcode 4或更高版本,还需要安装JDK 1.6以及Apache Maven。

至于该工具事实上到底怎么样,谷歌表示,该项目“目前处于Alpha与Beta版本之间”,而现在的初始版本版本号为0.8,这表示该工具即将被正式推出。

“有些谷歌的项目是以来J2ObjC的,但当一些新项目第一次在上面运行行,他们通常会被发现有一些Bug需要修复。”在该项目主页上的一份声明中这么写道,“很显然,每一个Java开发者使用Java的个人习惯有所不同,该工具还没能翻译出所有可能的路径。”

该项目是开源的,如果你热衷于寻找Bug,现在J2ObjC的完整源代码可以在Apache开源许可下获取。