Android Studio 导入 Gradle 项目

本文主要介绍了Android Studio导入Gradle项目时可能遇到的问题,包括Gradle版本不一致、编译方式变化(runProguard替换为minifyEnabled等)以及库项目无法设置applicationId等,并给出了相应的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


Android Gradle 项目出现的问题:

1、gradle版本不一样

2、gradle编译方式不一样

3、gradle 工具不一样

一、Gradle 版本不一样

1、版本不一样

              在工程的gradle/wrapper下,有个gradle-wrapper.properties文件,里面有说明使用的gradle版本。
               #Mon Aug 10 15:22:55 CST 2015
               distributionBase=GRADLE_USER_HOME
               distributionPath=wrapper/dists
               zipStoreBase=GRADLE_USER_HOME
               zipStorePath=wrapper/dists
               distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip

              (1)在Mac电脑中,直接下载当前gradle-2.4-all.zip。放入 ./gradle/wrapper/dists/gradle-xx(版本)-all.zip
                       ./gradle/wrapper/dists/gradle-xx(版本)-all.zip/xxxxx(随机码) 准确位置
              (2)直接导入时,选择本地下载的gradle。

二、gradle编译方式不一样

http://www.tuicool.com/articles/iMBbEf (详细讲解了这个问题)

Gradle DSL method not found: ‘runProguard()’

runProguard函数已经被废弃并且停止使用了

改成minifyEnabled

即如下的配置

buildTypes {
    release {

        minifyEnabled false // 替代的方式

        ......
    }
}

runProguard —> minifyEnabled

jniDebuggBuild –> jniDebuggable

zipAlign –> zipAlignEnabled

2,Library projects cannot set applicationId

新版本不能使用applicationId来定义库module的包名了,要定义在manifest

defaultConfig {
  applicationId "cn.flakor.lib"   <---- 删除这行
  minSdkVersion 15
  targetSdkVersion 19
  versionCode 1
  versionName "1.0"
    }
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        package="cn.flakor.lib">
...

利用flavor重命名包名

android {
   ...
   productFlavors {
       flavor1 {
           applicationId 'cn.flakor.newname'
       }
   }

apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion '22.0.1'
    defaultConfig {
        applicationId 'dean.demo'
        minSdkVersion 21
        targetSdkVersion 21
        versionCode 1
        versionName '1.0'

    }
    buildTypes {
        release {
            apply plugin: 'announce'
            minifyEnabled false 
            proguardFiles getDefaultProguardFile('proguard-android.txt'),            'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:recyclerview-v7:21.+'
    compile 'com.android.support:cardview-v7:21.+'
}



三、gradle 工具不一样

    build tool是android官方提供的,一般来说向下兼容(但不绝对)
sample出现的时候,build tool版本就是那时候的版本,
所以项目设置的version可能就是楼主看到的那样,改成你现在有的build tool版本号,一般只要这个版本大于原来的就行了。
    compileSdkVersion 22
    buildToolsVersion '22.0.1'



              
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值