gomobile bind -target=android golang.org/x/mobile/example/bind/hello

 D:\go\src\golang.org\x\mobile\example\bind>gomobile bind -target=android ./hello

 

git clone https://github.com/golang/mobile.git

 

  • 下载
    $ go get golang.org/x/mobile/cmd/gomobile

  • 安装(需要等待几分钟)
    gomobile init

3. Golang开发手机应用有两种方式

a. 原生应用开发

$ go get -d golang.org/x/mobile/example/basic

  • 主要应用领域:

    • 应用控制管理与配置
    • OpenGL ES 2 绑定
    • Asset 管理
    • Event 管理
    • 试验中的包,含有OpenAL 绑定、音频、字体、图形以及运动传感器
  • Android开发

    • $ gomobile build -target=android golang.org/x/mobile/example/basic
      此命令会生成名为basic的apk安装包

    • $ gomobile install golang.org/x/mobile/example/basic
      此命令将安装apk包到已连接的android设备

  • IOS开发

    • $ gomobile build -target=ios golang.org/x/mobile/example/basic
      此命令会生成名为basic的app安装包

    • 下载IOS安装包命令行工具 - ios-deploy
      $ ios-deploy -b basic.app
      此命令将安装app文件到已开启的IOS模拟器或者已连接的IOS设备

b. 混合绑定开发

$ go get -d golang.org/x/mobile/example/bind/...

    • 优势
      • Go code复用
      • 在Android和IOS开发中共享通用的Go代码通过调用绑定的Golang包名
    • 限制

      • 当前仅支持的一些Go类型
      • 语言之间的绑定会有性能开销