Настройка нескольких проектов с помощью Gradle для Android

У меня возникла проблема с созданием моего приложения для Android.

У меня есть один основной модуль приложения и еще один, который необходим для google-play-services_lib.

Моя структура папок выглядит следующим образом:

ParkingApp
   | 
   |-----> google-play-services_lib (Library Project) 
   |-----> ParkingApp
   |-----> settings.gradle

Мой файл settings.gradle выглядит следующим образом:

include ':ParkingApp', ':google-play-services_lib'

У моей ParkingApp есть следующий build.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']
        }
    }
}

Любая помощь приветствуется!

Ответ 1

С новыми обновлениями в Android Studio и Gradle я думаю, что лучшим решением для добавления пакетов поддержки и баннеров сервисов google является использование репозиториев 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 до:

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

Ответ 2

Поместите google-play-services.jar в MyParkingApp/libs и укажите его как зависимость от MyParkingApp/build.gradle.