使用Gradle for Android的多项目设置

使用Gradle for Android的多项目设置,android,gradle,android-studio,google-play-services,Android,Gradle,Android Studio,Google Play Services,我在构建Android应用程序时遇到了一个问题 我有一个主应用程序模块,还有一个是google-play-services_库所需要的 我的文件夹结构如下: ParkingApp | |-----> google-play-services_lib (Library Project) |-----> ParkingApp |-----> settings.gradle include ':ParkingApp', ':google-play-ser

我在构建Android应用程序时遇到了一个问题

我有一个主应用程序模块,还有一个是google-play-services_库所需要的

我的文件夹结构如下:

ParkingApp
   | 
   |-----> google-play-services_lib (Library Project) 
   |-----> ParkingApp
   |-----> settings.gradle
include ':ParkingApp', ':google-play-services_lib'
My settings.gradle文件如下所示:

ParkingApp
   | 
   |-----> google-play-services_lib (Library Project) 
   |-----> ParkingApp
   |-----> settings.gradle
include ':ParkingApp', ':google-play-services_lib'
我的ParkingApp具有以下构造。gradle

buildscript {
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile files('libs/android-support-v4.jar')
    compile project(':google-play-services_lib')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 17
    }
}
google-play-services_lib的build.gradle如下:

buildscript {
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android-library'

dependencies {
    compile files('libs/google-play-services.jar')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 17
    }

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            res.srcDirs = ['res']
        }
    }
}

感谢您的帮助

将google-play-services.jar放在MyParkingApp/libs中,并将其作为MyParkingApp/build.gradle的依赖项引用。

随着Android Studio和gradle的新更新,我认为添加支持包和google play services jars的更好解决方案是使用maven存储库,而不是添加它自己的库,下面是如何将这两个文件都添加到任何.gradle文件中,使用这种方式,将这两个文件都添加到依赖项目中不会有更多问题

dependencies {
    compile 'com.google.android.gms:play-services:3.1.36'
    compile 'com.android.support:support-v4:13.0.+'
}
注意:在新版Android Studio 0.2.0中,您还需要将gradle verison更新为:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.5.+'
    }
}

如果你能解释一下问题所在,那会有帮助。请看我的答案:@Frohnzie我看到了你的答案,但我也遇到了同样的问题。E/dalvikvm:找不到从方法com.example.MainActivity.onCreate引用的类“com.google.android.gms.maps.MapFragment”