2013-05-26 3 views
2

У меня возникла проблема с созданием моего приложения для Android.Многопроектная настройка с Gradle для 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-игра-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'] 
     } 
    } 
} 

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

+2

это поможет, если вы объяснили, что проблема была. – RaB

+0

См. Мой ответ здесь: http://stackoverflow.com/a/16671865/768690 – Frohnzie

+0

@Frohnzie Я видел ваш ответ, но у меня такая же проблема. E/dalvikvm: Не удалось найти класс 'com.google.android.gms.maps.MapFragment', на который ссылается метод com.example.MainActivity.onCreate –

ответ

6

С новыми обновлениями в 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 verison к:

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

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

Смежные вопросы