在Linux下通过命令行打包Android应用的方法
时间:2018-07-11
这篇文章主要介绍了在Linux下通过命令行打包Android应用的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
本文介绍了在Linux下通过命令行打包Android应用的方法,分享给大家,具体如下:
Requirements
- Ubuntu 16.04
- sdk tools for linux
- Java 8
准备环境
安装Shell工具
sudo apt install -y wget unzip git
安装JDK
sudo apt install -y openjdk-8-jdk # 查看结果 java -version
初始化目录与环境变量
BUILD_BASE=`echo ~` export ANDROID_HOME=$BUILD_BASE/android_sdk mkdir -p $ANDROID_HOME export REPO_BASE=$BUILD_BASE/repo mkdir -p $REPO_BASE export REPO_USERNAME=xxx export REPO_PASSWORD=xxx export PROJECT_HOME=$REPO_BASE/android-preference export OUTPUT_RELEASE_DIR=$PROJECT_HOME/easy-preference/build/outputs/aar/release
安装SDK工具
cd $ANDROID_HOME # download wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip # unzip unzip sdk-tools-linux-4333796.zip # export environment variables export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
配置License
mkdir -p $ANDROID_HOME/licenses echo -e "nd56f5187479451eabf01fb78af6dfcb131a6481e" > $ANDROID_HOME/licenses/android-sdk-license
下载源码
cd $REPO_BASE # clone git clone -b develop git clone https://$REPO_USERNAME:$REPO_PASSWORD@github.com/hziee514/android-preference.git # pull git pull origin develop:develop # branches git branch git checkout -b develop
构建
第一次运行时需要下载依赖项,可能要花很长时间
cd $PROJECT_HOME chmod +x gradlew ./gradlew :easy-preference:assembleRelease
输出
$OUTPUT_RELEASE_DIR/easy-preference-release.aar
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- 【NLP】十分钟快览自然语言处理学习总结
- MVC5 网站开发之九 网站设置
- Redis安全小结
- webpack学习(七)打包压缩图片
- POJ1275 Cashier Employment(差分约束)
- REDIS操作命令小结
- Java发送邮件工具类
- javascript 变量、作用域和内存问题
- 1726: [Usaco2006 Nov]Roadblocks第二短路
- vue小白快速入门
- 算法模板——线段树9(区间加+区间求和+区间方和)
- 1709: [Usaco2007 Oct]Super Paintball超级弹珠
- 2015: [Usaco2010 Feb]Chocolate Giving
- 2060: [Usaco2010 Nov]Visiting Cows 拜访奶牛
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- RTSP协议视频平台EasyNVR流媒体服务器音频播放完毕后,视频为什么也会卡住?
- Redis | Redis 有序集合相关命令
- TypeScript 4.0正式发布!现在是开始使用它的最佳时机
- 微服务开源框架TARS 之 基础组件
- Gitlab-ci:从零开始的前端自动化部署
- 从 1 到 0 构建博客项目(导读)
- 应该在JavaScript中使用Class吗
- Go语言小书 | 关于编译和语法
- Go语言小书 | 小试牛刀,从hello world开始
- 3分钟短文 | Laravel 中间件传递数据到控制器
- 3分钟短文 | Laravel 表单验证数组的数据
- 3分钟短文:Laravel 编程中优雅地添加定义常量
- 极客算法训练笔记(四),栈和队列,从实际应用看数据结构
- 微博爬虫出错居然还和网络运营商有关
- 8.深入k8s:资源控制Qos和eviction及其源码分析