系统环境:

linux:ubuntu18

已配置jdk 环境变量

切换到root账户

sudo su

安装Android-sdk

(0)准备工作

  切换到/usr/local目录:

  /usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。

cd /usr/local

  其它关于linux目录的说明可以查看:为什么linux安装程序 都要放到/usr/local目录下

新建android-home文件夹,用来存放android-sdk安装文件

 mkdir android-home

切换到该目录下

cd android-home/

(1)下载android-sdk

SDK下载地址

复制链接,使用wget下载

下载命令:

root@wangju-HP--G4:/usr/local/android-home# wget http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz

下载成功:

root@wangju-HP--G4:/usr/local/android-home# ls
android-sdk_r24.4.1-linux.tgz

(2)解压下载的压缩包

tar -zxvf android-sdk_r24.4.1-linux.tgz 

(3)安装32位库

android sdk 工具包的一些命令行工具是基于32位系统的,在64为平台运行32程序必须安装 i386 的一些依赖库,方法如下

apt-get install -y libc6-i386 lib32stdc++ lib32gcc1 lib32ncurses5 lib32z1

(4)配置环境变量:

在命令终端输入:

cd 到解压目录:

cd android-sdk-linux

记录android-sdk目录:

root@wangju-HP--G4:/usr/local/android-home/android-sdk-linux# pwd
/usr/local/android-home/android-sdk-linux

ANDROID_SDK_HOME=/usr/local/android-home/android-sdk-linux

在终端输入:

nano /etc/profile

将下列内容写入到:/etc/profile末尾,并保存

ANDROID_SDK_HOME=/usr/local/android-home/android-sdk-linux
export PATH=$PATH:${ANDROID_SDK_HOME}/tools
export PATH=$PATH:${ANDROID_SDK_HOME}/platform-tools

如图:

(5)使配置生效

 source /etc/profile

(6)下载sdk和工具,更新下载

环境变量生效后,你可以使用android命令 列出sdk相关的列表,以便我们选择和自己项目匹配的SDK版本。

(刚才只是安装了最基础的SDK,要完全满足你的开发环境需要还得从下面的列表中选择你需要的SDK和工具更新下载)

android list sdk --all

输出如下所示:

这里包括不同的Android API 版本和不同的构建工具,选择你想要安装项目的序号,

Android SDK Platform-tools, revision 29.0.5这里我想安装  Android SDK Tools, revision 25.2.5,Android SDK Build-tools, revision 29.0.2

以及android 8.0.0以上的SDK所以选择序号 1,2,3,50,51,52

android update sdk -u -a -t ,,,,,

开始下载文件:

完成安装:

(7)验证android-sdk安装成功

查看adb版本,如下所示,android-sdk就配置完成了

root@wangju-HP--G4:/usr/local/android-home/android-sdk-linux/tools# adb version
Android Debug Bridge version 1.0.
Version 29.0.-

安装 Gradle

(1)下载gradle

首先cd到android-home的同级目录

cd /usr/local

下载gradle,这里要注意下载与你项目编译使用的gradle版本保持一致,否则不能正常编译

wget https://services.gradle.org/distributions/gradle-4.6-bin.zip

解压到当前目录

unzip gradle-4.4-bin.zip

(2)将gradle添加到环境变量:

echo "export GRADLE_HOME=/usr/local/gradle-4.6" >> /etc/profile
echo "export PATH=\$PATH:\$GRADLE_HOME/bin" >> /etc/profile

(3)使配置生效

source /etc/profile

(4)验证gradle安装成功

如果安装配置的没有问题将会提示类似下面的信息

wangju@wangju-HP--G4:~$ gradle

> Task :help 

Welcome to Gradle 4.6.

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

To see more detail about a task, run gradle help --task <task>

For troubleshooting, visit https://help.gradle.org

编译 Android 应用

完成以上的环境配置,我们的一个Android下的基础构建环境就全部配置好了,接下来做的事情就是尝试使用gradle 编译一个android 应用出来验证我的编译环境是否OK,下载我写的一个gadle demo例子进行测试。

编译时报错如下:

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> Failed to notify project evaluation listener.
> Failed to install the following Android SDK packages as some licences have not been accepted.
platforms;android- Android SDK Platform
build-tools;28.0. Android SDK Build-Tools 28.0.
To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.
Alternatively, to transfer the license agreements from one workstation to another, see http://d.android.com/r/studio-ui/export-licenses.html Using Android SDK: /usr/local/android-home
> Must apply 'com.android.application' first! * Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 0s

从错误提示中看出,我需要安装下面这2个android sdk

platforms;android-26 Android SDK Platform 26
build-tools;28.0.3 Android SDK Build-Tools 28.0.3

安装

 android update sdk -u -a -t 

参考文档:

Ubuntu下全命令行搭建Android开发环境

测试编译过程,遇到如下问题,已解决:

问题1:

SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

问题2:

Failed to install the following Android SDK packages as some licences have not been accepted.

[ubuntu]android SDK 与Gradle环境的安装与配置|搭建android基础开发/构建环境的更多相关文章

  1. Android SDK 和 Eclipse ADT 离线安装 教程

    因为google 被限制,就是FQ后,下载的速度依旧非常慢,让人非常崩溃啊,所以这里就分享一下离线安装android SDK 和eclipse ADT 离线安装方法. 安装之前首先已经确保java s ...

  2. [其他]Android SDK离线文件路径以及安装更新方法

    一.离线安装Android SDK文件路径 转载自:http://www.oschina.net/code/snippet_1539302_45940 Google TV Addon, Android ...

  3. Android Studio(一):介绍、安装、配置

    Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...

  4. 【C#】VS2015开发环境的安装和配置(二)2016-08-03更新

    分类:C#.VS2015.WPF.ASP.NET MVC.Android.iOS.Unity3D: 更新日期:2016-08-03 按下面介绍的步骤安装即可. 一.安装JDK和Android SDK ...

  5. 【C#】VS2015开发环境的安装和配置(一)2016-08-03更新

    分类:C#.VS2015.WPF.ASP.NET MVC.Android.iOS.Unity3D: 更新日期:2016-08-03 一.简介 为了避免网上乱七八糟的过时介绍,避免误导初学者,这次把至2 ...

  6. VS2015开发环境的安装和配置 2016-07-03更新

    创建日期:2016-07-03 一.简介 为了避免网上乱七八糟的过时介绍,避免误导初学者,这次把至2016年6月底C#开发环境各种版本的更新和安装过程重新整理一下贡献出来.目的是为了让对C#感兴趣的初 ...

  7. Appium环境的安装与配置,Python测试脚本测试

    Appium自动化测试系列1 - Appium环境的安装与配置 发表于4个月前(2015-01-27 14:34)   阅读(803) | 评论(0) 0人收藏此文章, 我要收藏 赞0 寻找 会’偷懒 ...

  8. Twitter Storm:单机环境的安装与配置

    Twitter Storm:单机环境的安装与配置 好久没写博客了,这一段时间一直被导师push着做毕业设计.由于目前的方向偏向于图像识别检索,毕设打算做一个基于分布式计算平台的图像检索系统,查阅相关资 ...

  9. Android studio 安装与配置【Android学习入门】

    终于下定决心认真学习Android开发了. 之前在很多平台看到很多大牛们学习Android的经验和心得,纸上得来终觉浅. 这里推荐stormzhang老师总结的Android学习之路. 为了防止电脑卡 ...

随机推荐

  1. 7、Nginx基础Http原理

    1Http协议概述 HTTP全称HyperText Transfer Protocol中文名为超文本传输协议 1.1.什么是超文本? 包含有超链接(Link)和各种多媒体元素标记的文本.这些超文本文件 ...

  2. 解决Chrome无法安装CRX离线插件

    解释说明: 谷歌浏览器Chrome,版本号67.0.3396.99,自这个版本后的Chrome,手动拖放插件文件crx到谷歌浏览器,这种安装插件的方式,一定会失败,它会提示“无法从该网站添加应用,扩展 ...

  3. mybatis 动态sql 的笔记 以及标签

    MyBatis常用OGNL表达式 e1 or e2 e1 and e2 e1 == e2,e1 eq e2 e1 != e2,e1 neq e2 e1 lt e2:小于 e1 lte e2:小于等于, ...

  4. c++第三次作业:类的友元

    C++第三次作业:类的友元 1.友元的关系提供了不同类或对象的成员函数之间.类的成员函数与一般函数之间进行数据共享的机制.通俗的说友元关系就是一个类主动声明其他函数是他的朋友,可以使其获得特殊访问权利 ...

  5. Django学习系列20:改进功能测试

    隐示等待和显示等待 我们看看在功能测试中function_tests.py中的 time.sleep inputbox.send_keys(Keys.ENTER) time.sleep(1) self ...

  6. Ruby 中的闭包-代码块

    看了一片文章https://ruby-china.org/topics/38385讲closure的. 写下一些感想: 闭包就是 一个函数能够记住和存取它的lexical作用域,即使这个函数是在它的l ...

  7. git生成公钥public key并添加SSH key。git乌龟gerrit下推送git【server sent :publickey】

    一.key 码云链接:http://git.mydoc.io/?t=180845#text_180845 博客链接: 方式一:https://blog.csdn.net/xb12369/article ...

  8. UVa136 Ugly Numbers(优先队列priority_queue)

    Ugly Numbers 题目 Ugly numbers are numbers whose only prime factors are 2, 3 or 5. The sequence 1, 2, ...

  9. hdu1529 Cashier Employment[差分约束+二分答案]

    这题是一个类似于区间选点,但是有一些不等式有三个未知量参与的情况. 依题意,套路性的,将小时数向右平移1个单位后,设$f_i$为前$i$小时工作的人数最少是多少,$f_{24}$即为所求.设$c_i$ ...

  10. python中sys.argv[]用法

    sys.argv[]的作用: 在运行python文件的时候往文件里面传递参数. 从函数外部获取到变量值 import sys arg = sys.argv[0] args = sys.argv[:] ...