打造一个全命令行的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” 脚本就可以。

时间: 2024-08-02 07:01:59

打造一个全命令行的Android构建系统的相关文章

一个使用命令行编译Android项目的工具类

一个使用命令行编译Android项目的工具类 简介 编译apk项目需要使用的几个工具,基本都在sdk中,它们分别是(Windows系统): 1.aapt.exe 资源打包工具 2.android.jar Android编译工具 3.dx.bat dex文件生成工具 4.sdklib.jar 生成apk 5.jarsigner 签名工具 准备 在打包前,需要的环境如下: 1.JDK1.6+ 2.Android SDK 3.上述5个工具的路径 打包过程 1.生成R.java文件 比如: aapt p

Ubuntu下全命令行安装Android SDK

为了在AWS云服务器上实现自动化打包Android APP的APK包,我需要远程命令行环境下安装Android SDK,当然还要用代理或者科学上网,这里简单整理一下过程: 首先,由于墙的原因,Android SDK基本无法直接下,必须使用代理或者国内镜像之类,这里推荐使用上海交大的,参数: --proxy-host sdk.gdgshanghai.com --proxy-port 8000 以下是具体的安装步骤 1)安装JDK,建议不要使用OpenJDK,使用Oracle的官方版本最佳 sudo

利用命令行删除Android系统自带应用的方法

一般来说,手机厂家都会在手机中内置许多应用,而这些应用是使用一般的应用程序管理无法删除的.当然,现在有一些APP,如360和豌豆荚,在获取了系统的root权限之后是可以删除自带应用的.但是如果我不想让一个app来获取我的root权限呢?有没有方便.快捷的方法呢? 当然有,那就是利用shell命令.当然,首先要安装当前手机的驱动程序,否则无法进行调试. 在如何删除Android系统中的内置应用一文中作者也介绍了利用命令行删除系统应用的方法,但是个人感觉太麻烦了,其实有更简单的方法,只要三步即可:a

命令行创建Android项目

android create project -n Welcome_World -t 8 -p Welcome_World -k org.example.welcome_World  -a Welcome_World 其中,-n指定要创建的项目的名称,-t指定项目针对的Android的平台,-p指定该项目的保存路径,-k指定该项目的包名,-a选项指定Activity的名称. 现创建一名称为Example000的Android应用,其路径为当前路径,包名为org.Example.example00

如何编写一个带命令行参数的Python文件

看到别人执行一个支持命令行参数的python文件,瞬间觉得高大上起来.牛逼起来,那么如何编写一个带命令行参数的python脚本呢?不用紧张,下面将简单易懂地让你学会如何让自己的python脚本,支持命令行参数. 首先你要知道python中的sys模块的一些功能: import sys print "the number of python program's argument:",len(sys.argv) print "the value of every argument

Cocos2d-x 3.0 打造一个全平台概念文件夹

Cocos2d-x 3.0 打造一个全平台概念文件夹http:// www.eoeandroid.com/thread-328055-1-1.html

命令行运行Android Robotium自动化用例或单元测试用例

本文目录 1.运行所有的测试用例 2.运行单个测试类或某个TestSuite 3.运行某个测试类里面的某个测试方法 4.运行两个不同的测试类或类中的方法 命令行运行Android Robotium自动化用例或单元测试用例 1.运行所有的测试用例 举个栗子:运行测试工程下的所有用例 1 adb shell am instrument -w com.taobao.taobao.test/android.test.InstrumentationTestRunner 2.运行单个测试类或某个TestSu

命令行创建Android模拟器

前提:安装好Android SDK(通过SDK Manager去下载) 1. 进入.../sdk/tools 2. 命令行执行android avd,就会出现模拟器创建页面 附:使用这种方式创建android模拟器,可以避免很多不必要的错误 3. 启动模拟器时可以勾上Scale display to real size

Android构建系统

摘要:本文原文为Android Studio官方开发文档,笔者学习过程中,顺便翻阅给大家. 与人方便,自己方便.转载请保留本地址及原文地址,谢谢. 本文地址:http://blog.csdn.net/mikulee/article/details/45394673 原英文原文地址:https://developer.android.com/intl/zh-cn/sdk/installing/studio-build.html#detailed-build 构建系统概述(Build System