首页 > 代码库 > go for android编译指南

go for android编译指南

去年12月中旬,go已经正式支持android平台!虽然,目前只是初步支持,相应的开发还在紧罗密鼓的进行中。但是仍然挡不住试用一把的冲动。目前go的代码是通过java的jni接口来调用的,go的代码会被编译成so动态库,会在编译的时候包含到apk中。下面来看看怎么在android平台来编译go的代码 。


先从下载的连接下载代码:

https://github.com/golang/mobile


由于go for android的开发环境搭建目前比较麻烦,go for android的开发者已经为我们提供了一个docker的image(docker的安装可以参考《docker 使用总结》),可以用下面的命令下载:

docker pull golang/mobile


运行mobile的容器:


docker run -it --rm -v /home/my/go/mobile-master:/go_mobile golang/mobile /bin/bash


这里假设下载下来的go for android的代码的路径为:/home/my/go/mobile-master,这条命令会把/home/my/go/mobile-master影射到容器的/go_mobile目录。


接下来在$GOROOT/src/golang.org/x/创建/go_mobile的符号连接mobile


mkdir -p $GOROOT/src/golang.org/x


ln -s /go_mobile $GOROOT/src/golang.org/x/mobile


编译libhello示例代码:

cd  $GOROOT/src/golang.org/x/mobile/example/libhello

./make.bash


连接到设备:
adb connect xx.xx.xx.xx

安装:

adb install bin/Hello-debug.apk 


接下来就是运行了。


总结:目前go for android只做到了go代码在android平台的简单运行,要想真正的用go在android平台上进行像游戏开发等等,还有很多工作要做。

go for android编译指南