首先要注意一点,Android Studio中把proguard.txt已经命名为proguard-rules.pro,由此可见,採用Gradle打包,混淆规则文件的名称是不重要的。能够自己随便命名。

混淆规则跟原来一样。没有变化。不懂能够搜一下别人怎么写的。

增加签名文件。在Build->Generate Signed APK…

就会看到以下的弹出框

假设没有签名文件就创建新的签名文件,假设已经有签名文件,那么选择签名文件的位置,并填写好password就能够点Next了。

创建签名文件的方式跟老版本号(Eclipse+ADT)的签名方式一样,这里就不再多说了。

你会发现AS生成的签名文件是jks后缀名的,跟原来的能够说tore不一样。其实。签名文件也并非受文件名称影响。

Next后会弹出以下的框

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

在Buid Type中默认有两个选项,故名思议,我们寻经常使用的是debug,正式打包,我们须要用release。选中后点Finish就能够打包了。可是这样打包并没有做代码混淆。以下我们继续增加代码混淆。

选中项目的Open Module Setting,然后我们会看到以下这个框

我们选中app->Signing 点击+号,新增一般配置,这个配置就是刚刚须要手动输入和导入签名文件的操作,我们能够在这个config(能够随便命名)填好签名password和签名文件的路径。

然后我们再点到Build Types选卡

这个就是我们的正式发包的须要配置的内容。其它选默认。须要改两个地方:Signing Config,选择我们刚刚设置好的签名配置;在Proguard File这一栏选中项目中的proguard-rules.pro的绝对路径,也就是项目根文件夹下的app/proguard-rules.pro,然后点击ok。

Gradle会自己主动同步改动过的内容。

这个时候我们来看一下app文件夹下的build.gradle的内容。你会发现跟我们刚才配置的内容是一模一样的。

以下我能够打包正式签名的apk包。

有三种方式:

1.      在Build-> Generate Signed APK… 直接下一步下面一步就能够打包了;

2.      在AS 提供的终端中输入gradlew release,或者外部的终端打开到项目的跟文件夹再输入gradlew release。但这个前提是已经在本机安装了gradle。而且配置了环境变量,不然终端是无法识别这种命令的。

3.      使用AS默认Gradle插件,在我们窗体的最右边能够找到Gradle(默认是最小化),打开它并点击项目名称再下一层,看到有一个Tasks->build。找到assembleRelease(批量打包)并双击,就自己主动打包。

正式签名包假设没有更改过文件夹默认是在app文件夹下或者是app/build/output/apk文件夹下,个人比較喜欢放在后面那个文件夹。

还要注意一点。改动打包的版本号信息,须要在build.gradle中改动以下红色的内容,跟manifest.xml一样

defaultConfig {

applicationId 'com.arjinmc.goddnessplan'

minSdkVersion 14

targetSdkVersion 22

versionCode 2

versionName '0.0.2'

signingConfig signingConfigs.config

}

Android Studio中使用Gradle打包的更多相关文章

  1. 如何在Android Studio中使用Gradle发布项目至Jcenter仓库

    简述 目前非常流行将开源库上传至Jcenter仓库中,使用起来非常方便且易于维护,特别是在Android Studio环境中,只需几步配置就可以轻松实现上传和发布. Library的转换和引用 博主的 ...

  2. Android Studio中由于gradle插件版本和gradle版本对应关系导致的编译失败的问题

    今天在Android Studio中导入新项目,import之后编译报错,报错信息基本都是和版本相关,查询gradle版本相关知识,了解到gradle插件版本和gradle版本有相应的匹配关系,对应如 ...

  3. 在 Android studio 中 配置Gradle 做到 “根据命令行提示符生成指定versionCode, versionName,指定apk的打包输出路径”

    需求: 1. 使用 Android studio ,使用 gradle 进行构建 2. 在实际开发中,我们需要使用jenkins进行打包.就需要配置我们的 gradle 脚本以支持参数化的方式. 3. ...

  4. 在 Android studio 中 配置Gradle 进行 “动态编译期间,指定 远程服务器地址 ,生成多个安装包”

    需求: 在产品开发中,经常需要发布各个版本,每个版本的服务器地址有不同的服务器地址.比如 开发服务器使用 192.168.1.232服务器, 测试服务器使用 192.168.1.245服务器, 正式上 ...

  5. Android(java)学习笔记126:Android Studio中build.gradle简介

    1.首先我们直接上代码介绍: // Top-level build file where you can add configuration options common to all sub-pro ...

  6. android studio 中的 gradle version

    刚开始接触AS,从geithub上download了好多项目,每一个都需要改动,对我这种新手来说,慢慢琢磨吧 问题一: 解决办法: 在build.gradle中,将gradle的版本改正如上图所示即可 ...

  7. 解决Android Studio中Refreshing gradle project时间过长的最简单方法

    Refreshing gradle project往往出现在Gradle出现更新,需要从墙外的网重新拖下来的前提下.具体可以查看以下文件:/path/to/project/gradle/wrapper ...

  8. Android(java)学习笔记66:Android Studio中build.gradle简介

    1.首先我们直接上代码介绍: // Top-level build file where you can add configuration options common to all sub-pro ...

  9. android studio中为gradle指定cmake版本

    Android Studio相当于是Intellij基础上写了一个AS插件,这个插件使用gradle作为构建系统,因此构建出现问题先考虑gradle的文档. gradle可以使用native buil ...

随机推荐

  1. POJ 3264 Balanced Lineup(RMQ)

    点我看题目 题意 :N头奶牛,Q次询问,然后给你每一头奶牛的身高,每一次询问都给你两个数,x y,代表着从x位置上的奶牛到y位置上的奶牛身高最高的和最矮的相差多少. 思路 : 刚好符合RMQ的那个求区 ...

  2. [wikioi]线段覆盖

    http://wikioi.com/problem/1214/ 这道题也归为贪心了.我也不是很能分辨,但想法确实是:1.有阶段最优化性:2.前一状态和后一状态有关系. 想法:1.排个序是很自然的想法, ...

  3. 选择排序SelectSort

    /** * * @author Administrator * 功能:选择排序法 */ package com.test1; import java.util.Calendar; public cla ...

  4. [OJ] Wildcard Matching (Hard)

    LintCode 192. Wildcard Matching (Hard) LeetCode 44. Wildcard Matching (Hard) 第二次刷还是被这题虐. 其实就是跪在一个地方, ...

  5. XML PUBLISHER输出excel禁止自动将数字格式化处理

    方案1: 在 rtf template 里头添加   =T("域"). 方案2: 加个无中断空格  0xA0               In the rtf template, ...

  6. Eclipse使用技巧及个性化设计

    以下除特殊说明均在 Windows->Preferences里面操作 如何把Eclipse关闭提示调出来? General->Startup and Shutdown,在 Confirm ...

  7. Unity NGUI 图集Atlas制作

    unity版本:4.5 NGUI版本:3.6.5 1.选择要制作的图片放到对应目录下,在Asset下新建一个文件夹Picture用于放置图片: 2.选中一张图片,打开Atlas Maker: 3.单击 ...

  8. 利用if,else判断输入的是不是一个正整数

    static void Main(string[] args)        {            while (true)                      { Console.Writ ...

  9. mac book air 装win7

    1. 使用mac book air A1465中 bootCamp制作启动U盘: 需要U盘一个8G,windows 7 原版镜像ISO安装文件一个,根据bootcamp操作提示选择文件及U盘, 注意U ...

  10. 【转】G++ 处理 /usr/bin/ld: cannot find -lc

    原文网址:http://blog.sina.com.cn/s/blog_67bbb71101010tto.html 用g++编译C++程序时显示出:/usr/lib/ld: cannot find - ...