您现在的位置是:首页 > 文章详情

Android即将支持GO语言,从游戏开始

日期:2014-07-14点击:603

【大咖・来了 第7期】10月24日晚8点观看《智能导购对话机器人实践》

 原文 docs.google.com

(注* 最近nodejs***的Web框架作者TJ决定告别nodejs去写go了,此文也许揭示了一些原因)

David Crawshaw

2014年6月

摘要

我们打算在Android平台引入Go,重点是支持在Android上使用Go写游戏. 将会使用现有的API接口。

背景

Android是是支承应用程序的操作系统。它能比Unix系统提供更多的库和服务,重用现有接口使Go迁移到Android的过程会更加简单。

在Android平台让GO实现与JAVA完全一样的功能是非常困难的。这个用JAVA写的平台有着海量的API。任何将这些API用Go封装都会遇到:手动封装无法应用***的特性,自动封装的Go的代码没法看,无论如何这个过长可能会很长。

然而,安卓上用于编写游戏所需要的基于C语言的API只是安卓API中的一个比较小的子集,所以用Go来实现NDK中一些等价的功能是可行的。

但是,Android应用中有一些较少的基于C写的API接口,他们在Android NDK中:对,就是游戏用到的这些接口。因此让GO支持这些NDK中的特性是较为可行的。

提议

在Go1.4的开发周期中,通过设置GOOS=android,Android将可以支持go代码了,同时也支持cgo(Elias Naur提供)。 Dalvik/ART 也将可以加载,因此会产生一需要连接到NDK的额外文件。

在编绎面板,我们会提供一个交叉编绎器,用来在linux上运行Go的一些工具,即可以使用adb工作在Android设备上测试你的编绎文件。

这里有一个新的项目go.mobile,它会提供:

  • 绑定OpenGL, OpenSL和OpenMAX 这些从NDK暴露的接口。
  • JAVA到Go的绑定生成器。比如你有一个Go的库,这玩意可以让java代码调用它,因此游戏菜单的UI可以在标准的SDK中创建。(就想Go中的绑定,这可以让同样的代码去绑定其它语言,比如Objective-C)。
  • 与Android Studio集成
  • 在项目稳定可用时,将发布发行版。

原文:docs.google.com

译文链接:http://ourjs.com/detail/53bf7930332f1f1808000006

原文链接:http://mobile.51cto.com/abased-445506.htm
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章