Go 語言將在1.4版本中支援面向Android平台開發

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

Go 語言將在1.4版本中支援面向Android平台開發

蘋果發布了Swift語言時候,本人就感覺到Google很可能會讓自己的Go語言支援Android系統。果不其然,蘋果的Swift語言讓Google倍感壓力。於是,所有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.

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.