golang开发android环境搭建_window

                                                                               golang开发android环境搭建介绍

一 安装依赖软件:

  git:版本管理

  go:  go开发环境(版本>=1.5),可直接下载window版的go安装包。

  android studio: android开发IDE

 

二  go工具mobile安装:

  1 mkdir -p $GOPATH/src/github.com/golang; cd $GOPATH/src/github.com/golang          //$GOPATH go程序工作目录,参考go环境搭建相关知识

      2 git clone https://github.com/golang/mobile.git                                                         // 下载mobile工具代码   参考git的使用

      3 mkdir -p $GOPATH/src/golang.org/x; cp -r $GOPATH/src/github.com/golang/mobile $GOPATH/src/golang.org/x        // 将源码移至golang.org/x目录下, 由于被墙,代码移至github上

      4 cd $GOPATH/src/golang.org/x/mobile/cmd/gomobile; go build                                   // 生成gomobile.exe可执行程序, 直接在github.com目录下编译会报错

      5 可gomobile.exe加到环境变量目录,方便使用

 

三 使用gomobile生成android apk以源码自带例子作说明):

  1 cd $GOPATH/src/golang.org/x/mobile/example/basic; gomobile  build                         // 使用gomobile build直接编译会生成basic.apk, 直接执行gomobile可看其相关使用说明

      2 将生成的apk直接下载模拟器或手机运行即可

 

四 使用gomobile生成android sdk(以源码自带例子作说明)

     1 cd $GOPATH/src/golang.org/x/mobile/example/bind; gomobile bind -target=android ./hello       // 生成hello.aar二进制发行包

     2 使用android studio创建一个测试项目,将hello.aar拷贝到项目模块的libs目录下                                  // 参考android studio引用jar

     3 配置模块的gradle.build文件,在gradle.build中添加如下代码(红色代码):

 

 1 repositories {      // 配置gradle依赖库(flat依赖方式)    参考gradle依赖库的相关使用
 2     flatDir {
 3         dirs 'libs'
 4     }
 5 }
 6 
 7 dependencies {      // 该节点文件一般都会存在, 故仅最后一行为新增代码 
 8     compile fileTree(include: ['*.jar'], dir: 'libs')
 9     testCompile 'junit:junit:4.12'
10     compile 'com.android.support:appcompat-v7:23.1.0'
11   
12     compile(name:'hello', ext:'aar')  
13 }

 

  4 重新编译整个项目,生成build/intermediates/exploded-aar/hello目录,在此目录可找go文件对应生成的java文件

      5 在项目中直接使用build/exploded-aar/hello目录中相关接口即可实现调用go的sdk相关功能

 

ps:go作为android sdk使用是有限制的,具体参考gobind相关知识,如:https://godoc.org/golang.org/x/mobile/cmd/gobind

      直接使用go开发android程序也不是很完善。 另外liunx下搭建基本类似

 

gradle使用:http://blog.jobbole.com/71999/

gomobile使用:https://github.com/golang/go/wiki/Mobile

gomobile源码地址:https://github.com/golang/mobile

posted @ 2016-01-18 16:14  ~逍遥~  阅读(6564)  评论(0编辑  收藏  举报