golang mobile 的安装以及使用 windows版本

mobile 这个东西我也是初学,但是在过程中经历了太多的坑了,因此写一篇记录一下。

网上很多篇帖子 都把最简单的 安装方式介绍了,利用科学上网来下载

go get golang.org/x/mobile/cmd/gomobile

请尽量将代理修改为 GOPROXY https://goproxy.cn ,使用命令 go env -w GOPROXY=https://goproxy.cn

该命令需要你提前安装好 golang的sdk 本人使用的GOSDK的版本是 go1.16
之所以强调版本,是因为我之前使用的是 go1.15.15 这个版本的sdk 中缺少一些关键的文件,所以使用mobile的最低版本官网上也有介绍,minVersion 1.16。
关于怎么安装 sdk 和配置环境变量 这里不多做说明。
很多时候导致你失败的原因,都和你的环境变量离不开关系,请仔细检查你的环境变量,在goland编译器中可以查看

gopath.jpg

坑:如果你安装的时候没有选择默认路径,请一定要去环境变量中配置

如下图:


gopath 环境变量.jpg
2.path声明.jpg
用户变量可有可无.jpg

检验你的gosdk是否加入成功,进入cmd 输入命令

go env
cmd检查.jpg

1.主要介绍手动安装的过程 手动下载如下链接

github.com/golang/mobile
github.com/golang/mod
github.com/golang/xerrors
github.com/golang/tools
github.com/golang/sys

2.创建如下文件夹 src\golang.org\x (先创建src 在src中创建golang.org ...) 将下载好的文件如下图所示放置在文件夹内。注意目录结构!

创建文件夹.jpg

3.打开cmd 先执行2个命令。

##将代理变为国内

go env -w GOPROXY=https://goproxy.cn  (此处的代理地址可以通过go env 检查是否成功)
##(此步骤,可以不做)暂时忽略检查,待完毕之后,要执行 go env -w GO111MODULE=auto 或者是 go env -w GO111MODULE=on
go env -w GO111MODULE=off

4.开始执行手动安装。本人采取的是最笨的方法,这里大家灵活使用命令。

4.1首先将你创建的 src 文件夹,放置在你的 GOPATH 的目录之下。
放置路径.jpg
4.2利用命令cd到该目录下的 如下2个文件夹(这是我的路径,你输入命令的时候按你自己的来!)此过程之中,上述所需条件如果不满足,就是报错,本人是将自己所遇到的所有错误总结之后,写的上述步骤。除此以外的请自行查找,祝你好运~
执行安装命令.jpg
4.3.安装成功 你会得到2个可执行文件:
得到文件.jpg
##查看
gomobile version
##把这个选项改回到auto
go env -w GO111MODULE=auto 
4.4将生成的2个新文件放置到 你的 $gopath /go1.16\bin 目录之下
移动位置.jpg

===============================================================

NDK的安装。这里也不过多赘述,利用Android studio 进入setting 在输入中搜索sdk 进入后第二个选项 就可以下载ndk。本人的ndk版本22.0.7026061 一定要进行环境变量的配置!

ndk环境变量.jpg
path中声明.jpg
##用这个检验你到底配置成功与否
ndk-build 

创建一个test.go文件 , 并将这个文件复制到 $GOPATH\src\Test 目录之下 (Test文件夹是我自己新创建的)这里的文件与路径的用法写法都是灵活可变的,我只把我成功的步骤展示出来


//这个的包名,会影响到你生成的 aar 或者是 jar 的名字
//这也将成为你在java代码中,静态调用方法函数的类名,详情可以去看下边在java中的调用方式
package forandroidtest


import (
    "runtime"
    "strconv"
    "strings"
)

func TestRepeat(str string, count int) string {

    return strings.Repeat(str, count)
}

func RunFuncName() string {
    pc := make([]uintptr, 1)
    runtime.Callers(2, pc)
    f := runtime.FuncForPC(pc[0])
    return f.Name()
}

func GetFuncParameter() string {
    _, _, line, _ := runtime.Caller(1)
    return strconv.Itoa(line) + "行"
}
复制go文件.jpg
我本人的做法是,将项目拷贝到了GOPATH\src\之下,然后再执行的。
打开cmd 将路径cd 到 Test文件夹之下。此过程之中,上述所需条件如果不满足,就是报错,本人是将自己所遇到的所有错误总结之后,写的上述步骤。除此以外的请自行查找,祝你好运~
注意:下边的 Test 并不是我 在Test文件目录之下的 Test.go 这个文件,而是 Test 这个文件夹本身。
另外还需要注意的是,你执行命令时,要CD到Test这个文件夹之下。
##你的文件夹叫什么,android 后边就写什么!如果你不是cd到你这个go工程的目录之下,请在android 加上你的路径(不过这样我个人没有成功过)
##会在当前目录下生成arr 和 jar 
gomobile bind -target=android test



##生成apk
gomobile build -target=android test

12.执行编译指令.jpg

13.生成了aar,jar.jpg

把这个aar放到你android 目录工程之下

implementation files('libs/forandroidtest.aar')

运行结果如下

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,496评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,407评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,632评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,180评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,198评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,165评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,052评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,910评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,324评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,542评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,711评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,424评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,017评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,668评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,823评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,722评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,611评论 2 353

推荐阅读更多精彩内容