BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

JUniversal:由微软开发的从安卓向Windows Phone和iOS移植应用的工具

| 作者 Abel Avram 关注 10 他的粉丝 ,译者 丛一 关注 2 他的粉丝 发布于 2015年2月12日. 估计阅读时间: 3 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

微软最近开源了一个用于编写Java跨平台移动应用的工具——JUniversal

JUniversal是一个转译工具,可以将Java源代码转换成C#源代码,同时保留代码格式和Javadoc注释。目前开发人员正在增强该工具以支持从Java到Objective C++的转换。微软开源技术小组建议先用这个免费工具将安卓应用转换到Windows Phone平台上,之后再用于转换应用至iOS平台。

JUniversal以应用的业务逻辑代码为目标,而非应用的用户界面。开发者仍需用原生代码为各个平台分别编写UI。

目前使用JUniversal仍有一个很重要的限制:并非全部的Java库都能支持。据微软的开发人员Bret Johnson介绍“Java到C#的转换器/转译器仅支持一些核心的Java类,如String和StringBuilder。对于其他常用的JDK组件,可以用JSimple库替代。”JSimple库包含如下支持:

  • 基本的语言组件:AutoCloseable,Comparable,Iterable,Math
  • 文件输入输出:Directory,File,Path,Reader,StringReader,Writer等。
  • JSON
  • 日志:Logger,LoggerFactory等。
  • 网络:HttpRequest,Socket,Url等。
  • OAuth
  • 单元测试:UnitTest,UnitTestBase
  • 工具类:Array,Collection,DateTime,HashMap,Iterator,List及其他工具类。

JSimple是从Apache Harmony提取而来,在此基础上 “做了一系列的功能增强”并且“移除了一些很少用到的功能。”其意图是为了“确保在Java和目标语言中代码都可以正常运行。”JSimple支持Java中一些最新的特性,例如拉姆达表达式。

JUniversal团队认为该工具稳定性已经足以用于生产,如果“你可以根据需要让它工作”。在Java-Objective C++转译器可以使用之前,他们建议用谷歌的J2ObjC完成用于iOS平台的Java代码转换。JUniversal团队欢迎开发者通过项目的GitHub仓库提出建议和发表评论。

查看英文原文:JUniversal: A Microsoft Tool for Porting Android Apps to Windows Phone and iOS

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT