将这两个下载下来,然后拷贝到你的Go的以下路径
go/src 创建一个文件夹golang.org/x ,把这两个文件夹丢进去
然后输入命令
gomobile init
可以输入命令 查看安装配置是否成功
gomobile bind -help
如果配置成功会给你一些提示

我感觉文档写得还是不算清楚,但是它有告诉你用什么命令生成aar
gomobile bind -o app/hello.aar -target=android golang.org/x/mobile/example/bind/hello
你在GoPath中创建一个Go文件,我是用GoLand进行开发的,项目的目录设置成GoPath,编写完之后,可以直接在文件中运行
gomobile bind -o 输入文件名.aar -target=android
这样就能在文件夹中生成一个aar
接着我们看看aar里面是什么,解压

首先可以看到生成这些ABI的so文件,再看看Manifest

这里有限制最低版本,所以如果你的版本比他还低的话就需要注意一下了
然后res里面是可以看到没有文件的。
最后我们反编译class文件

因为这不是Demo,直接是写公司的项目,所以有些地方要码,但是不影响。
从这里看得出,go帮我们生成了一个java文件,这个java文件定义了再Go中命名的原生方法。
其实从这里就可以看出,Go用的也基本是我们最上面写的JNI的方法,只是他帮你封装起来了而已
但是他的原生代码是不是转成C++的我就不清楚了,因为我不会反编译SO文件。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易采站长站。









