Android Studio 导入 Gradle 项目


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'



              

你可能感兴趣的:(android,android,gradle,编译,Studio)