Go 语言将在1.4版本中支持面向Android平台开发

Go 语言将在1.4版本中支持面向Android平台开发


苹果发布了Swift语言时候,本人就感觉到谷歌很可能会让自己的Go语言支持Android系统。果不其然,苹果的Swift语言让谷歌倍感压力。于是,所有Golang开发者的福音来临啦。

David Crawshaw
June 2014

摘要

我们提出将Go语言引入Android平台。重点将支持使用Go语言编写游戏。这些APIs将在AndroidNDK中定义。

背景

Android是一个用于运行应用程序(apps)的操作系统。相比于仅仅提供一个传统的Unix操作系统,应用程序更多的依赖于所提供的平台库和服务。这就意味着没有新的APIs,用于Android的Go运行时直接入口将不会特别有用。

如何将Go引入是非常棘手的事情。因为Android平台是Java编写的,并且拥有数量庞大的API。任何试图使用Go包装这些API都得不到想要的结果。手动建立包装会在特性方面滞后,而自动生成包装器会导致丑陋的Go代码。无论哪种方式,这都会导致程序运行缓慢。

然而,Android应用程序的一个子集:游戏,使用AndroidNDK所提供的一个更小的基于C语言的API表面上。让GO支持Android 提供等同于NDK的特性是可行的。

建议

在Go 1.4 周期中,安卓平台的编译引入到Go代码库,以及包含支持Android的cgo(由Elias Naur贡献)。Dalvik/ART-loadable .so文件将使用Android NDK的外部链接文件生成。

在发布上,我们仍然会提供交叉编译平台,并支持在Linux主机上使用adb工具对Android设备上测试程序。

我们将会提供一个名叫go.mobile的子版本,包括:

  • 通过Android NDK 对OpenGL, OpenSL, 和OpenMAX提供支持;
  • 一个Java->Go的语言绑定生成器。可以通过Java代码调用的Go的Package,因此游戏菜单Uis可以使用标准SDK构建(有可能支持通过其他语言调用Go,比如Objective-C)。
    系统集成
  • Android Studio
    新特性将会在Go版本稳定之后提供。

本人翻译水平有限,如有错误之处还请见谅啊。
看着Go语言越来越给力了,是不是很想学习一下。那就跟着码术一起学习Golang语言。


欢迎关注码术!一起学习golang.
欢迎关注码术

本文来自:CSDN博客

感谢作者:codemanship

查看原文:Go 语言将在1.4版本中支持面向Android平台开发

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。