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. shell 获取当前ip

    HOST_IP=$(hostname --all-ip-addresses | awk '{print $1}')

  2. JSP内置对象整理(转)

    ① out - javax.servlet.jsp.jspWriter out对象用于把结果输出到网页上. 方法: 1. void clear() ;清除输出缓冲区的内容,但是不输出到客户端. 2. ...

  3. C和指针 (pointers on C)——第四章:语句(上)

    第四章--语句(上) 总结总结!!! C没有布尔类型,所以在一些逻辑推断时候必须用整型表达式,零值为假,非零值为真. for比while把控制循环的表达式收集起来放在一个地方,以便寻找. do语句比w ...

  4. 磁盘性能指标--IOPS 理论

    机械硬盘的连续读写性很好, 但随机读写性能很差.这是因为磁头移动至正确的磁道上需要时间,随机读写时,磁头不停的移动,时间都花在了磁头寻道上,所以性能不高.  如下图:在存储小文件(图片).OLTP数据 ...

  5. Python教程:连接数据库,对数据进行增删改查操作

    各位志同道合的同仁可以点击上方关注↑↑↑↑↑↑ 本教程致力于程序员快速掌握Python语言编程. 本文章内容是基于上次课程Python教程:操作数据库,MySql的安装详解 和python基础知识之上 ...

  6. PHP四种传参方式

    test1界面: <html> <head> <title>testPHP</title> <meta http-equiv = "co ...

  7. Bootstarp--全局CSS样式之表格

    表格在实际开发中可以说是非常常见的,但是有很多人不喜欢使用表格,但个人觉得在简单的界面布局中使用表格还是很简单的.毕竟人家给了表格这元素,而你却不去使用,貌似有点不解风情. 下面简单介绍Bootstr ...

  8. java反射的应用+mybatis+spring动态生成数据库表

    最近接触了一个类似于代码生成工具的活.思路是,通过java的反射机制得到类的字段和字段类型, 从而可以创建一个map集合存储表名(由类名决定的特殊结构字符串),表字段(由类变量确定),表字段类型(由变 ...

  9. HTML5 <a>标签download 属性

    一.简单实例 <a href="../images/1.jpg" download="下载图片.jpg"> 点击按钮下载 </a> 二. ...

  10. .NET平台下几种SOCKET模型的简要性能供参考

    转载自:http://www.cnblogs.com/asilas/archive/2006/01/05/311309.html .NET平台下几种SOCKET模型的简要性能供参考 这个内容在cnbl ...