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中添加如下代码(红色代码):

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

  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

golang开发android环境搭建_window的更多相关文章

  1. Qt5.12.2开发Android环境搭建

    Qt-Android开发环境概要qt-opensource-windows-x86-5.12.2----armv7jdk-8u201-windows-x64android-ndk-r18b-windo ...

  2. C#开发Android环境搭建

    目前破解比较稳定的版本(我亲自尝试过的)是4.2. wuleba上的4.6,4.8,4.10 破解均会出现各种问题. 1 当前电脑账户最好是使用英文账号,而不要使用汉字,否则路径会出现乱码问题. 2 ...

  3. windows中用eclipse开发Android环境搭建SDK安装异常

    SDK更新时的“https://dl-ssl.google.com refused”错误 Download interrupted: hostname in certificate didn't ma ...

  4.  paip.android环境搭建与开发事例

    paip.android环境搭建与开发事例 好长时间没有玩AndROID了..以前常常做ANDROID的,今天决定在下载一个要做个时间设置器 作者Attilax ,  EMAIL:1466519819 ...

  5. Android 环境搭建

    一.Android 环境搭建 开发工具: Android Studio(开发工具,前提是先装 java JDK) 下载地址:http://www.androiddevtools.cn/   Oracl ...

  6. android环境搭建——工欲善其事,必先利其器 2

    前两天鼓捣android, 搭建环境,不想麻烦就用了  adt-bundle-windows-x86-20140702. rar , 起个模拟器哇塞,太爽了. 出去转一圈唠会回来正好启动成功!有个网友 ...

  7. React-native Android环境搭建

    基础安装 安装Homebrew Homebrew是Mac OSX的包管理器,我们需要通过Homebrew安装开发React Native的相关软件包. 如果不知道怎样安装Homebrew可以点这里:官 ...

  8. Android基础学习:Android环境搭建

    在3年前,自学过Android的一些基础知识,但是那个时候Linux等其他的知识结构比较薄弱,理解得不是很深刻,后来因项目变动的原因,没有再搞Android相关的东西了.时过境迁,还是因为项目变动,重 ...

  9. Python开发:环境搭建(python3、PyCharm)

    Python开发:环境搭建(python3.PyCharm) python3版本安装 PyCharm使用(完全图解(最新经典))

随机推荐

  1. VC++深入详解-第一章学习心得(二)

    前面介绍到了注册窗口,接下来进行窗口的创建,利用CreateWindow函数,结构如下 CreateWindowExW( DWORD dwExStyle, LPCWSTR lpClassName, / ...

  2. 【AOS应用基础平台】完好了AOS标签库,和标准标签库完美兼容了

    [金码坊AOS开发平台]今天①完好了AOS标签库,和标准标签库完美兼容了.②新开发了依据子页面动态生成主页面的二级导航菜单功能.#AOS开发平台#

  3. Swift 析构器deinit

    析构器只适用于类类型,当一个类的实例被释放之前,析构器会被立即调用.析构器用关键字deinit来标识,类似于构造器用init来标识. 原理: Swift会自动释放不再需要的实例以释放资源.Swift通 ...

  4. mybatis02 架构

    SqlMapConfig.xml(mybatis全局配置文件加载mybatis环境(数据源,事物,mapper.xml(配置sql语句),),类似于hibernate的全局配置文件,用于加载hiber ...

  5. mysql 超时设置

      在Mysql的默认设置中,如果一个数据库连接超过8小时没有使用(闲置8小时,即   28800s),mysql server将主动断开这条连接,后续在该连接上进行的查询操作都将失败,将   出现: ...

  6. linux之ioctl函数解析

    [lingyun@localhost ioctl_1]$ ls ipconfig.c [lingyun@localhost ioctl_1]$ cat ipconfig.c  /*********** ...

  7. Base64算法

    为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/4288372.html ...

  8. Python学习入门教程,字符串函数扩充详解

    因有用户反映,在基础文章对字符串函数的讲解太过少,故写一篇文章详细讲解一下常用字符串函数.本文章是对:程序员带你十天快速入门Python,玩转电脑软件开发(三)中字符串函数的详解与扩充. 如果您想学习 ...

  9. 核心运营报表无线端数据,pv,uv相关数据,从9月1号开始就没了,为什么?

    问题现象截图 核心运营报表 从获取数据的api的地址可以看出: http://data.51buy.com/json.php?biz=statistic&mod=OrderKeyData&am ...

  10. volatile用处说明

      在JDK1.2之前,Java的内存模型实现总是从主存(即共享内存)读取变量,是不需要进行特别的注意的.而随着JVM的成熟和优化,现在在多线程环境下volatile关键字的使用变得非常重要. 在当前 ...