关于Android构建
“IDE都是给小白程序员的,大牛级别的程序员一定是命令行控,终端控,你看大牛都是使用vim,emacs 就一切搞定”
这话说的虽然有些绝对,但是也不无道理,做开发这行要想效率高,自动化还真是缺少不了命令行工具,因为只有命令行才是最佳的人机交互工具。其实 IDE也是底层也是调用命令行工具而已,只不过给普通开发者呈现一个更友好的开发界面。这里可不是宣扬让大家放弃IDE都改命令行,只是每种事物都有他存 在的理由,无论是编程语言还是工具都是一个原则 “没有最好的,只有最合适的”。
发布产品的时候为了统计各渠道流量免不了要构建不通的渠道包,你懂得国内渠道上 百个,靠IDE编译打包非吐血不可。这些重复劳动最适合交个程序来做,很多程序员想不明白这个问题,宁愿把大量的精力时间花在业务上,却不知道用工具提高工作效率。在这里写一篇简单的教程,告诉大家怎么脱离IDE环境完成一个android项目的编译构建,有了这基础开发什么自动化构建工具都不是什么难事了, 前一阵子做的一个打包html5应用的在线工具AppBuilder就是基于命令行构建完成的。
说到命令行自然是不需要图形界面,所以Android SDK的安装下载自然都是在终端上进行。下面是本文中使用的一些SDK和基本环境。
- ubuntu server 14.04 (64位)
- JDK 1.7
- android-sdk_r24.0
- gradle-2.2.1
进入正题,接下来一步一步介绍如何安装配置一个命令行下的编译构建系统.
step 1 安装 JDK 环境
配合android的JDK最好选用JDK官方版本而不是Open JDK,下面是在unbuntu下安装JDK 1.7的方法。
sudo add-apt-repository ppa:webupd8team /java sudo apt-get update sudo apt-get install oracle-java7-installer |
step 2 安装 Android SDK
android sdk 工具包的一些命令行工具是基于32位系统的,在64为平台运行32程序必须安装 i386 的一些依赖库,方法如下:
sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 |
安装完成32位的依赖库后,我们使用wget 去官方下载最新的linux下android SDK包。
cd ~ wget http: //dl .google.com /android/android-sdk_r24 .0.1-linux.tgz tar xvzf android-sdk_r24.0.1-linux.tgz |
编辑 .profile 或者 .bash_profile 把下面的目录增加到 path的搜索路径中,确保android SDK的的一些命令工具可以直接在终端使用,比如 adb 命令。
ANDROID_HOME=$HOME /android-sdk-linux export PATH= "$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools" exprot ANDROID_HOME |
使环境变量生效
source ~/.profile |
环境变量生效后,你可以使用android命令 列出sdk相关的列表,以便我们选择和自己项目匹配的SDK版本。(刚才只是安装了最基础的SDK,要完全满足你的开发环境需要还得从下面的列表中选择你需要的SDK和工具更新下载)
android list sdk --all |
输出如下所示:
1- Android SDK Tools, revision 24.0.1 2- Android SDK Platform-tools, revision 21 3- Android SDK Build-tools, revision 21.1.2 4- Android SDK Build-tools, revision 21.1.1 5- Android SDK Build-tools, revision 21.1 6- Android SDK Build-tools, revision 21.0.2 7- Android SDK Build-tools, revision 21.0.1 8- Android SDK Build-tools, revision 21 9- Android SDK Build-tools, revision 20 10- Android SDK Build-tools, revision 19.1 11- Android SDK Build-tools, revision 19.0.3 12- Android SDK Build-tools, revision 19.0.2 13- Android SDK Build-tools, revision 19.0.1 14- Android SDK Build-tools, revision 19 15- Android SDK Build-tools, revision 18.1.1 16- Android SDK Build-tools, revision 18.1 17- Android SDK Build-tools, revision 18.0.1 18- Android SDK Build-tools, revision 17 19- Documentation for Android SDK, API 21, revision 1 20- SDK Platform Android 5.0.1, API 21, revision 2 21- SDK Platform Android 4.4W.2, API 20, revision 2 22- SDK Platform Android 4.4.2, API 19, revision 4 23- SDK Platform Android 4.3.1, API 18, revision 3 24- SDK Platform Android 4.2.2, API 17, revision 3 .... |
这里包括不同的Android API 版本和不同的构建工具,选择你想要安装项目的序号,这里我想安装 build tools 19.1 ,build tools 21 及 android 4.2.2以上的SDK所以选择序号 “1,2,3,20,21,22,23”
android update sdk -u -a -t 1,2,3,10,20,21,22,23 |
step 3 安装gradle构建环境
使用Ant构建项目已经是过去式了,这里我们选用更加强悍和方便的构建工具gradle 。
下载 grdle 二进制包
cd ~ wget https: //services .gradle.org /distributions/gradle-2 .2.1-bin.zip |
释放到本地Home目录,创建名字为”gradle”的符号链接,符号连接的好处是方便版本更新,有了新的版本直接修改符号链接即可。
unzip gradle-2.2.1-bin.zip ln -s gradle-2.2.1 gradle |
配置gradle环境变量并使其生效,编辑 ~/.profje 文件增加下面内容
GRADLE_HOME=$HOME /gradle export PATH=$PATH:$GRADLE_HOME /bin |
保存后使环境变量使其生效
source ~/.profile |
环境变量生效后你可以在终端敲入’gradle’命令并运行用以检测gradle是否安装成功。
gradle |
如果安装配置的没有问题将会提示类似下面的信息
:help Welcome to Gradle 2.2.1 To run a build, run gradle <task> ... To see a list of available tasks, run gradle tasks To see a list of command -line options, run gradle --help BUILD SUCCESSFUL |
验证是否可以编译android 应用
完成以上的环境配置,我们的一个Android下的基础构建环境就全部配置好了,接下来做的事情就是尝试使用gradle 编译一个android 应用出来验证我的编译环境是否OK,下载我写的一个gadle demo 例子进行测试。
git clone https: //github .com /examplecode/gradle_demo cd gradle_demo /hello-apk-with-gradle gradle build |
一切顺利的话,编译完成后,你会在 “hello-apk-with-gradle/build/outputs/apk” 目录下找到编译好的apk包。至于如何整合到你自己的项目中去,只需要仿照例子给你的项目提供一个”gradle.build” 脚本即可。
本文转自 念槐聚 博客园博客,原文链接:http://www.cnblogs.com/haochuang/p/4648208.html,如需转载请自行联系原作者

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
GitHub上不错的Android开源项目(三)
摘要:截至目前,在GitHub“最受欢迎的开源项目”系列文章中我们已介绍了40个Android开源项目,对于如此众多的项目,你是Mark、和码友分享经验还是慨叹“活到老要学到老”?今天我们将继续介绍另外34个Android开源项目。在之前的“GitHub上不错的Android开源项目”系列文章(一)、(二)中, 我们也相继盘点了40个GitHub上最受欢迎的Android开源项目。对于GitHub上如此众多的项目,有人不断Mark,有人分享自己的经验,有 人心生“看得眼花缭乱,果然是需要终身学习的时代”的感慨,不管怎么样,如果能让你真的有所学习有所收获,我们的目的也就达到了。 今天我们将继续介绍GitHub上另外34个非常受欢迎的Android开源项目,在这些项目中,你又在用或用过哪些呢? 41.android-swipelistview SwipeListView是一个Android List View实现,实现了自定义ListView单元格,可通过滑动来显示扩展面板。开发者可直接登陆Google Play下载安装其Demo应用。 42.greenDAO greenDAO是一个可以帮...
- 下一篇
《从零开始学Swift》学习笔记(Day 21)——函数返回值
返回值3种形式:无返回值、单一返回值和多返回值。 无返回值函数 所谓无返回结果,事实上是Void类型,即表示没有数据的类型。 无返回值函数的语法格式有如下3种形式: func函数名(参数列表) { 语句组 } func函数名(参数列表) ->() { 语句组 } func函数名(参数列表) ->Void { 语句组 } 无返回值函数不需要“return返回值”语句。 多返回值函数 两种方式来实现。 一种是在函数定义的时候,将函数的多个参数声明为引用类型传递,这样当函数调用结束时,这些参数的值就变化了。 另一种是将返回定义为元组类型。 介绍元组类型返回多值的实现。看一个示例: 1 2 3 4 5 6 7 8 9 10 funcposition(dt:Double,speed:(x:Int,y:Int))->(x:Int,y:Int){ letposx:Int=speed.x*Int(dt) letposy:Int=speed.y*Int(dt) return (posx,posy) } letmove=position( 60.0 ,speed:( 1...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Hadoop3单机部署,实现最简伪集群
- CentOS关闭SELinux安全模块
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题