4.4、Android Studio在命令行运行Gradle
默认情况下,在你的Gradle构建设置中有两种构建类型:一种是为了调试你的应用,debug类型;一种是构建最终的发布版本,release类型。无论你使用哪种模式,你的app必须在安装到设备或虚拟机中之前进行签名。当时debug类型时,使用一个调试key,当时release类型时,使用一个release key。
无论你使用debug或者release类型来构建,你需要运行和构建你的模块。这将会创建一个apk文件,你可以安装文件到你的虚拟机或者设备中。当你使用debug构建类型,apk文件会自动的被SDK工具用debug key进行签名。当你使用release构建类型的时候,apk文件是没有签名的,你必须手动用你的key对apk进行签名。
注意:当你使用ant并且在Windows中安装JDK,默认安装到Program Files中。因为包含空格,可能会导致ant失败。为了修复这个问题,你可以通过如下方式什么JAVA_HOME变量:
set JAVA_HOME=c:\Progra~1\Java\<jdkdir>
更简单的方式,是将JDK安装到没有空格的目录。比如:
c:\java\jdk1.7
你可以声明你的项目使用Gradle版本,如下:
gradle wrapper --gradle-version version-number
在调试模式构建
为了方便测试和调试,你可以在debug模式构建你的APP并安装在虚拟机中。在调试模式,构建工具自动用一个debug的key为你的应用签名并且aipalign进行优化。
为了在debug模式进行构建,打开命令行,找到你的项目的根目录,在windows下,执行:
gradlew.bat assembleDebug
在Mac OS或Linux平台,输入如下命令:
$ chmod +x gradlew
$ ./gradlew assembleDebug
在Release模式构建
在windows运行如下命令:
> gradlew.bat assembleRelease
在Mac OS或者Linux平台,运行如下命令:
$ ./gradlew assembleRelease
这是未签名版本的生成方式。
本文作者:宋志辉
个人微博:点击进入
4.4、Android Studio在命令行运行Gradle的更多相关文章
- android学习17——命令行建gradle工程
使用命令行建gradle工程要涉及到几个工具的版本. 1.gradle的版本.这个用gradle -version查到. 2.SDK BuildTools的版本. 这个要先配好SDK的环境变量,然后在 ...
- cocos2d-x 3.9 android studio项目命令行打包
进入创建的项目的 proj.android-studio目录 cocos run/compile -p android --android-studio 这样就可以打包了
- 【Mac + Android】之Android Studio 环境搭建,AVD模拟器运行(包括:命令行运行AVD,并且Genymotion模拟器插件配置运行)
目录: 前提.Mac环境下手动配置Android SDK 一. Android Studio下载及配置 二.AVD模拟器配置运行 扩展:命令行运行AVD模拟器 三.在Android Studio 中配 ...
- 命令行运行Android Robotium自动化用例或单元测试用例
本文目录 1.运行所有的测试用例 2.运行单个测试类或某个TestSuite 3.运行某个测试类里面的某个测试方法 4.运行两个不同的测试类或类中的方法 命令行运行Android Robotium自动 ...
- 从命令行运行django数据库操作
从命令行运行django数据库操作,报错: django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_T ...
- python命令行运行在win和Linux系统的不同
今天,在完成一个小的python习题,习题的主要内容是读取一个帮助模块,并保存到本地文件. 知道是用pydoc进行模块的读取,但是在windows系统下,调用os模块之后,结果总是为空. 核心语句: ...
- jmeter命令行运行-分布式测试
上一篇文章我们说到了jmeter命令行运行但是是单节点下的, jmeter底层用java开发,耗内存.cpu,如果项目要求大并发去压测服务端的话,jmeter单节点难以完成大并发的请求,这时就需要对j ...
- jmeter命令行运行-单节点
jmeter有自己的GUI页面,但是当线程数很多或者现在有很多的测试场景都是基于linux下进行压测,这时我们可以使用jmeter的命令行方式来执行测试,该篇文章介绍jmeter单节点命令运行方式. ...
- 含有package关键字的java文件在命令行运行报错
程序中含有package关键字,使用命令行运行程序时出现"找不到或无法加载主类",而使用Eclipse软件可以正常运行程序的可能解决办法. 在包下的类,在Java源文件的地方编译后 ...
随机推荐
- SAC E#1 - 一道神题 Sequence1
题目背景 小强和阿米巴是好朋友. 题目描述 小强很喜欢数列.有一天,他心血来潮,写下了一个数列. 阿米巴也很喜欢数列.但是他只喜欢其中一种:波动数列. 一个长度为n的波动数列满足对于任何i(1 < ...
- 【网络流】【BZOJ1006】【SCOI2007】蜥蜴
学弟@lher在周末训练赛中出的题目的原题(这个人拿省选题来当作提高组模拟,太丧了...) 题意简析:看题目:) 解题思路:题目显然是最大流. 首先拆点将点权变为边权,然后按照题意对于所有有跳板的点向 ...
- ●POJ 3348 Cows
题链: http://poj.org/problem?id=3348 题解: 计算几何,凸包,多边形面积 好吧,就是个裸题,没什么可讲的. 代码: #include<cmath> #inc ...
- bzoj4559[JLoi2016]成绩比较 容斥+拉格朗日插值法
4559: [JLoi2016]成绩比较 Time Limit: 20 Sec Memory Limit: 256 MBSubmit: 261 Solved: 165[Submit][Status ...
- CTSC2017 铁牌记
Day 0: 先到了丽都酒店. 看见北京八十中学生在发胸牌手册和T恤,领完之后开始分房间. 我和ryc一屋,lyd和ysq一屋,yzy和gzz分到了珀利酒店,老师尝试了半天把我们分到一个酒店,失败了. ...
- JavaScript和DOM
body { margin: 0 } .left { float: left } .right { float: right } .pg-head { height: 48px; background ...
- TeamViewer 服务队列网页怎么打开?有什么用?
熟悉一款软件,除了要熟悉它的界面,还应该熟悉它的网站.可能会有很多人说,网站我当然知道了.但是TeamViewer的服务队列页面你真的熟悉吗?所以,今天小编就带大家深入的了解一下TeamViewer服 ...
- getBoundingClientRect方法获取元素在页面中的相对位置
获取元素位置可以用 offset 或 getBoundingClientRect,使用 offset 因为兼容性不好,比较麻烦,offset获取位置会形成"回溯".而 getBou ...
- json转化为对象数组
1.ascx传值给aspx aspx页面 <%@ Page Title="" Language="C#" MasterPageFile="~/_ ...
- KMP算法小结
最近看了一些关于KMP算法的资料,在此写一篇博客总计一下. 1.KMP算法介绍 KMP算法是一种字符串搜索的改进算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现,因此人们称 ...