包含标签 go 的文章

gomobile入门指南

初始化环境

官方的WiKi链接:https://github.com/golang/go/wiki/Mobile ,但我感觉它写得不是很好,尤其是gomobile init的部分。

首先,我安装了Android Studio,安装好之后,默认的SDK路径是/Users/scue/Library/Android/sdk

其次,我安装了Android NDK,安装好之后,我这边的路径是/Users/scue/source/Android/android-ndk-r16b

随后,我们依次执行以下命令来安装gomobile和初始化gomobile

……

阅读全文

gomobile遇到的问题合集

GO语言支持移动开发,可以直接将已有GO代码编译成一个libgojni.so的形式,然后通过Java层代码去调用它,就可以让原本是二进制的程序,变成了一个apk形式去运行。

gomobile目前尚处于实验室阶段,但凡这种实验性的,遇到点问题都是很正常的,比如本文章所述的内容,可能你将来也会遇到。

……

阅读全文

GO语言获取程序自身MD5值

获取自身的MD5值可能有很多用途,比如我们将程序运行客户端时,我们就可以通过对比MD5值来确保自己的程序没有被恶意地篡改。

……

阅读全文

GO语言执行命令超时的设置

golang实际开发中,难免会涉及到调用其他的命令,如果其他的命令输出需要太久的话,我们可能就不会去等待它了,而是期望像我们平时使用Ctrl+C一样将它给停止掉,然后观察它的输出。

……

阅读全文

GO语言AES加密

平时工作难免会有一些信息是非常重要的,不期望被他人给明文窃取,尤其是一些重要的资料进行落地的时候,需要进行一下加密。

……

阅读全文

如何解决GO语言中的Android DNS解析异常、时区不正确的问题

其实这两个问题都是因为Android不是标准的Linux系统环境导致的,如果你给Android操作系统添加上了/etc/resolv.conf就能解决DNS问题,时区的问题不容易通过添加文件解决(毕竟要添加的文件还是蛮多的)。

但其实我们作为一个软件开发者,能让自己少一点依赖就少一点依赖,就按Android的开发方式去搞就好了。

……

阅读全文

GO完全静态编译

1
CGO_ENABLED=0 go build --ldflags "-extldflags -static" -o bin/frps-static ./cmd/frps

实际可以看到效果如下:

……

阅读全文

GOPM的使用方式

下载源码:

1
2
3
4
5
6
7
8
gopm get -g -d -v golang.org/x/mobile/cmd/gomobile
[GOPM] 03-09 17:32:42 [ INFO] App Version: 0.8.8.0307 Beta
[GOPM] 03-09 17:32:42 [ INFO] Local repository path: /Users/scue/.gopm/repos
[GOPM] 03-09 17:32:42 [ INFO] Indicated GOPATH: /Users/scue/go
[GOPM] 03-09 17:32:42 [ INFO] /Users/scue/.gopm/repos/golang.org/x/mobile
[GOPM] 03-09 17:32:42 [DEBUG] Skipped installed package: golang.org/x/mobile/cmd/gomobile@branch:<UTD>
[GOPM] 03-09 17:32:42 [ INFO] Package copied to GOPATH: golang.org/x/mobile
[GOPM] 03-09 17:32:42 [ INFO] 0 package(s) downloaded, 0 failed
……

阅读全文

GO指南 练习:Web爬虫

在这个练习中,我们将会使用 Go 的并发特性来并行化一个 Web 爬虫。

修改 Crawl 函数来并行地抓取 URL,并且保证不重复。

……

阅读全文