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中添加如下代码(红色代码):
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的更多相关文章
- Qt5.12.2开发Android环境搭建
Qt-Android开发环境概要qt-opensource-windows-x86-5.12.2----armv7jdk-8u201-windows-x64android-ndk-r18b-windo ...
- C#开发Android环境搭建
目前破解比较稳定的版本(我亲自尝试过的)是4.2. wuleba上的4.6,4.8,4.10 破解均会出现各种问题. 1 当前电脑账户最好是使用英文账号,而不要使用汉字,否则路径会出现乱码问题. 2 ...
- windows中用eclipse开发Android环境搭建SDK安装异常
SDK更新时的“https://dl-ssl.google.com refused”错误 Download interrupted: hostname in certificate didn't ma ...
- paip.android环境搭建与开发事例
paip.android环境搭建与开发事例 好长时间没有玩AndROID了..以前常常做ANDROID的,今天决定在下载一个要做个时间设置器 作者Attilax , EMAIL:1466519819 ...
- Android 环境搭建
一.Android 环境搭建 开发工具: Android Studio(开发工具,前提是先装 java JDK) 下载地址:http://www.androiddevtools.cn/ Oracl ...
- android环境搭建——工欲善其事,必先利其器 2
前两天鼓捣android, 搭建环境,不想麻烦就用了 adt-bundle-windows-x86-20140702. rar , 起个模拟器哇塞,太爽了. 出去转一圈唠会回来正好启动成功!有个网友 ...
- React-native Android环境搭建
基础安装 安装Homebrew Homebrew是Mac OSX的包管理器,我们需要通过Homebrew安装开发React Native的相关软件包. 如果不知道怎样安装Homebrew可以点这里:官 ...
- Android基础学习:Android环境搭建
在3年前,自学过Android的一些基础知识,但是那个时候Linux等其他的知识结构比较薄弱,理解得不是很深刻,后来因项目变动的原因,没有再搞Android相关的东西了.时过境迁,还是因为项目变动,重 ...
- Python开发:环境搭建(python3、PyCharm)
Python开发:环境搭建(python3.PyCharm) python3版本安装 PyCharm使用(完全图解(最新经典))
随机推荐
- 阿里云部署Docker(7)----将容器连接起来
路遥知马力.日久见人心.恩. 该坚持的还是要坚持. 今天看到一个迅雷的师弟去了阿里,祝福他,哎,尽管老是被人家捧着叫大牛.我说不定通过不了人家的面试呢.哎,心有惭愧. 本文为本人原创,转载请表明来源: ...
- go 初使用
hello.go package main import "fmt" func main(){ fmt.Println("hello world") 直接运行 ...
- careercup-栈与队列 3.5
3.5 实现一个MyQueue类,该类用两个栈来实现一个队列. 解答 队列是先进先出的数据结构(FIFO),栈是先进后出的数据结构(FILO), 用两个栈来实现队列的最简单方式是:进入队列则往第一个栈 ...
- epoll使用实例说明
之前一直在讲如何epoll如何好用,但是并没有实例来演示epoll的使用,下面我们就看一个服务器端使用epoll监听大量并发链接的例子. 首先看一下epoll的几个函数的介绍.1.epoll_crea ...
- Visual Studio 调试技巧 (三) -- 调试第三方组件代码
上次我们提到,没有源代码而且没有调试符号,我们也可以 Debug.有人可能会问,我什么时候需要在这种情况下调试吗?! 是的.比方说,我们用了某些第三方的组件,这些组件里面难免也会有 Bug.就算是微软 ...
- Linux如何卸载挂载文件
在我们进行远程文件操作的时候,我们经常会出现文件服务出现卸载掉哦情况.例如 umount /mnt/net1umount: /mnt/net1: device is busy. (In ...
- Command Line-Version (SetACL.exe) – Syntax and Description
For a quick start, tell SetACL the following: Object name (-on): This is the path to the object SetA ...
- 11.12 noip模拟试题
题目名称 加密 冒泡排序图 重建可执行文件名 encrypt bubble rebuild输入文件名 encrypt.in bubble.in rebuild.in输出文件名 encrypt.in b ...
- C++ 常见问题
1:保证编译后方法名不被修改: The: extern "C" { function declarations here in h file } will disable C++ ...
- (转)C#中Trim()、TrimStart()、TrimEnd()的用法 .
C#中Trim().TrimStart().TrimEnd()的用法: 这三个方法用于删除字符串头尾出现的某些字符.Trim()删除字符串头部及尾部出现的空格,删除的过程为从外到内,直到碰到一个非空格 ...