问题:由于导入的是别人的安卓项目在打包的的时候不能勾选v1 v2选项,经过查询是因为gradle版本低的原因.
需要更换gradle高级版本和插件的版本(更换了gradle就会自动更换?)

参照:android studio3.0 打包签名 v1,v2 不可勾选(http://blog.sina.com.cn/s/blog_a66e1c460102x8fx.html)

查看你项目当前的gradle版本:
切换到安卓视图,点击Gradle Scripts目录下的gradle-wrapper.properties文件查看
distributionUrl属性,看最后,我的版本是gradle-2.14.1-all

解决办法:更换项目中的gradle版本

1、下载gradle
http://services.gradle.org/distributions/ 在这个网址可以下载到gradle最新版本,选择 gradle- 版本号-all.zip的 ,比如 gradle-4.10.2-all.zip。

关注一个问题:Android Studio gradle插件版本和gradle版本对应关系(https://www.cnblogs.com/diyishijian/p/7751407.html),并不是直接下载最新的版本就是最好的,选择适合你编译器的版本的。

我的Android Studio版本 : Android Studio 3.3 Beta 3我下载的gradle版本:gradle-4.10.2-all.zip

区分gradle的3个版本:

  1. gradle-xx-all.zip是完整版,包含了各种二进制文件,源代码文件,和离线的文档。例如,
    gradle-3.3-all.zip

  2. gradle-xx-bin.zip是二进制版,只包含了二进制文件(可执行文件),没有文档和源代码。例如,gradle-3.3-bin.zip

  3. gradle-xx-src.zip是源码版,只包含了Gradle源代码,不能用来编译你的工程。例如,

gradle-3.1-src.zip
但我们一般下载的都是 -all

2. 将下载好的gradle的zip压缩文件保存在自定义路径 下
比如我的:D:\Android\Gradle\gradle-4.10.2-all ,不要解压

3、设置
在AS中打开你的项目,file ==> setting ==> Build,Execution,Deployment ==>Gradle
默认是使用 “Use default gradle wapper(recommended)”,还有下面的 offline work 本地离线工作目录,勾选的话默认是在你的C:/Users/ASUS/.gradle这个目录下去找有没有你定义的gardle版本,如果在这个目录下存在你定义gradle版本(gradle-wrapper.properties文件中定义的),就直接使用,没有的话就会去下载,有的时候比较慢,不推荐。

3.1 修改gradle-wrapper.properties文件 中的版本号,点击右上角的 Sync Now 让AS自动下载
不推荐,会比较慢,

这种方法会出现很多问题:
1、有的人让你修改 build.gradle不要修改,下载好了和你as版本对应的gradle后会自动修改的
classpath ‘com.android.tools.build:gradle:2.2.3’

2、修改 build.gradle这个文件后会出现 xxx.-gradle版本号.pom 、xxx…-gradle版本号.jar的问题(解决办法往下看)

3、出现 Gradle plugin版本太低需要重新下载 Gradle plugin (解决办法往下看)

3.2 针对当前项目单独设置 :file ==> setting ==> Build,Execution,Deployment >Gradle>Use local gradle distribution ==>选择你下载的gradle压缩文件目录
将你下载下来的gradle版本解压到某一个目录下:D:\Android\Gradle\gradle-4.10.2-all

打开as工程,切换到 Android 视图,找到 Gradle Scripts ,找到gradle-wrapper.properties 文件gradle-wrapper.properties 这个文件是专门用来管理gradle 的配置文件 将其中的distributionUrl 一项修改为 第二步中路径 :distributionUrl=file:///D:/Android/Gradle/gradle-4.10.2-all/gradle-4.10.2/gradle-4.10.2-all.zip

同步一下 或关闭工程重新打开 离线配置gradle就完成了,会自动文件解压到C:\Users\ASUS.gradle\wrapper\dists\ 你当前版本 目录下。

依然会出现让你更新gradle plugin

至此 引出一个问题:
gradle插件,gradle这是两个名词:
Android的构建系统使用Gradle来构建应用**.Gradle是一种构建工具**,如何来提供这个Gradle构建环境呢?这就需要通过安装Gradle插件来使系统能支持运行Gradle.安装Android Studio后就已经帮我安装了Gradle插件.但Gradle插件是独立于Android Studio运行的,所以它的更新也是与Android Studio分开的.
参照:Androidstudio gradle 插件和 gradle 区别及更新(https://blog.csdn.net/shi_xin/article/details/80393771)
同样也就说明了我们需要单独下载gradle 、gradle plugin两个版本对应情况:
Android Studio gradle插件版本和gradle版本对应关系(https://www.cnblogs.com/diyishijian/p/7751407.html 、 https://developer.android.google.cn/studio/releases/gradle-plugin.html#updating-plugin [官网])

从下表可以看出来,我们下载的gradle是 gradle-4.10.2-all 的,那么gradle plugin的版本 对应的是3.3.0-3.3.2(也可以更高)
我的:
gradle: gradle-4.10.2-all
gradle plugin: 3.3.0

同时也说明了3.1 下第三个问题的确是需要更新gradle plugin的版本。(稍后说)
至于3.1下第二个问题:我们根据上标修改了build.gradle 中的版本号还是报错 xxx.pom、xxx.jar的问题,点击后发现可能不点访问(实际可能是网址错误),在该文件中找到是因为没有 添加google()
在其中
allprojects {
repositories {
google()
jcenter()
}
}


这个问题在官网中其实就有说明(https://developer.android.google.cn/studio/releases/gradle-plugin#updating-plugin)
当gradle 版本大于4.1 后,需要使用google的仓库去下载Android Gradle插件3.0.0或更高版本。

总结:
1、更新了gradle就要更新gradle plugin,gradle下载 -all 版本的,注意gradle 、 gradle plugin版本之间的对应关系

2、gradle网址: 查看gradle的版本 以及可以下载 http://services.gradle.org/distributions/

3、gradle和 gradle plugin 对应关系:
https://developer.android.google.cn/studio/releases/gradle-plugin#updating-plugin

更新了gradle必须下载更新gradle plugin(这个插件不好找位置直接使用网络自己下载吧)

4、更新gradle的两种方式:在线、离线

4.1、修改gradle-wrapper.properties配置文件 自动下载**
可以选择修改gradle-wrapper.properties配置文件修改gradle的版本,更新后会自动下载到C:\Users\ASUS.gradle\wrapper\dists目录下

4.2、也可以下载高级版本的gradle到本地通过使用本地gralde的方式

5、更新gradle plugin:

5.1、修改build.gradle配置文件 在buildscript{ }中修改classpath 'com.android.tools.build:gradle:x.x.x对应的版本号

修改allprojects {} 添加 google()

5.2、file ==> Project Structre ==> project ==>

android Plugin Version ==>填写版本号

android Plugin Repository ==> google(), jcenter

default Library Repository ==> google(), jcenter

最终build.gradle配置文件:

6、另一种解决办法 :Androidstudio项目更换gradle版本(https://blog.csdn.net/wb_001/article/details/76473403)结合上面的使用

可能会出现:Lint found fatal errors while assembling a release target. 问题的解决方案
(https://www.jianshu.com/p/9a3d4dddfcb2)

至此应该不会出现什么问题了,打包的时候可以选择 v1、v2了。

更多相关文章

  1. 吐血整理:推荐几款顶级好用的IDEA插件
  2. Android(安卓)4.0-Launcher-FolderEdit-onKeyPreIme
  3. 各版本安卓手机USB调试模式打开方法
  4. 【Android(安卓)NDK 开发】Android.mk 配置动态库 ( Android(安
  5. Android(安卓)Studio 打开 Eclipse 项目
  6. ANT批量打包
  7. jni学习笔记之二:编写Hello Jni
  8. 下载 android 4.0 SDK (windows)
  9. 点击 Android(安卓)Studio 的 build 按钮后发生了什么

随机推荐

  1. ImageView的属性
  2. android 音频framework的分析
  3. build.gradle文件介绍,gradle版本对应
  4. Android中扫描wifi热点
  5. Android应用程序获取ROOT权限的方法 (基础
  6. 建本地 repo server
  7. 折磨死我的conversion to dalvik format
  8. Android在子线程中更新UI的方法汇总(共七
  9. android自带图片资源图标一览,android.R.d
  10. Android 使用View的旋转实现漂亮的动画效