基于golang的android动态库开发,很久以前golang就支持开发android上的动态库及应用了,golang的环境搭建就不说了,直接从gomobile开始
软件依赖
golang, gomobile, jdk,android sdk
gomobile
gomobile就是一个可以利用golang来开发android上本地应用及动态库的一个golang框架,我们通过他能生成能在android程序中调用的aar库文件。关于gomobile的介绍也可以看这里: https://github.com/golang/go/wiki/Mobile
gomobile安装
要求是golang版本要大于1.5(我用的目前最新版1.7,目前golang活跃,不要拿旧版本测试)go get golang.org/x/mobile/cmd/gomobilegomobile需要依赖ndk,通过init命令会自动下载:
gomobile init -v
gomobile init 加-v参数后会显示包括具体下载链接在内的详细安装信息。
在墙内下载对应的ndk和openal可能会卡住,解决办法是自己下载那两个文件,放到$GOPATH/pkg/gomobile/dl/目录中,我本地的是 gomobile-ndk-r12b-linux-x86_64.tar.gz gomobile-openal-soft-1.16.0.1-ndk-r12b.tar.gz
手动下载完后,放到$GOPATH/pkg/gomobile/dl/后再次执行gomobile init他自己就会完成剩下的工作了。