使用 Go 语言开发 Android 程序

bookislife · · 9117 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

环境配置

  1. 安装 Go 1.5 以上版本,具体安装步骤见官网 https://golang.org/doc/install
  2. 安装 gomobile https://godoc.org/golang.org/x/mobile/cmd/gomobile
    执行以下命令,安装过程中可能需要翻墙

    go get -v golang.org/x/mobile/cmd/gomobile
    gomobile init -v

在安装过程中可能会发生以下问题

  1. 提示 unrecognized import path 错误,通常翻墙后可解决
  2. 提示 import path does not begin with hostname 错误,如果设置了 GOROOT 的话取消该设置
  3. 提示 $GOPATH not set 错误,检查是否有设置 GOPATH 以及不要使用命令时添加 sudo
  4. 提示某个目录缺少权限,授权给当前用户 sudo chown -R <当前用户名> <提示的目录名>

编写代码

  1. 创建 Android 工程,编写原生代码。注意:Android 工程的 targetSdkVersion 不能为 23。
  2. GOPATH 下创建对应的应用包名,编写 GO 代码。
  3. 在 Android 工程下创建新的 Gradle 模块,修改该模块的 build.gradle 文件。

    plugins {
       id "org.golang.mobile.bind" version "0.2.4"
    }
    
    gobind {
       // Go 应用的包名
       pkg = "com.bookislife/goandroid"
    
       // GOPATH 路径,可通过执行 `go env` 来查看
       GOPATH = "/Users/sidney/GOPATH"
    
       // Go 的二进制文件
       GO = "/usr/local/Cellar/go/1.5.3/bin/go"
    
       // GoMobile 的二进制文件,默认为 `GOPATH/bin/gomobile`,如果安装在其它目录才需要手动指定
       //    GOMOBILE = "/Users/sidney/GOPATH/bin/gomobile"
    }
  4. 确保 Android 应用根目标的 settings.gradle 引用了此模块。
  5. 编译 Go 代码,./gradlew gobind,编译完成后会在步骤 3 创建的 Go 模块下生成包含 Native 文件的 aar 文件。
  6. 在 Android 工程中正常使用 Native 代码,后续操作都和普通应用程序一样。

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:bookislife

查看原文:使用 Go 语言开发 Android 程序

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:701969077

9117 次点击  
加入收藏 微博
1 回复  |  直到 1999-12-31 16:00:00
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传