2013-06-14 4 views
5

Я хочу создать различные вкусы проекта (только папки res имеют различное содержимое), но это не сработает.встроенные ароматы проекта

Так вот мой build.gradle файл (как в этом вопросе Custom old Android project structure in Gradle):

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 
apply plugin: 'android' 

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar') 
    compile project('<path>:actionbarsherlock') 
} 

android { 
    compileSdkVersion 17 
    buildToolsVersion "17.0.0" 

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

    buildTypes { 
     debug { 
      packageNameSuffix ".debug" 
     } 

      release{ 
      packageNameSuffix ".release" 
      } 

     android.sourceSets.flavor1 { 
      res.srcDir = ['res_flavor1'] 
     } 

     android.sourceSets.flavor2 { 
      res.srcDir = ['res_flavor2'] 
     } 

     productFlavors { 
      flavor1 { 
       packageName "androidstudio.test.flavor1" 
      } 
      flavor2 { 
       packageName "androidstudio.test.flavor2" 
      } 
     } 
    } 
} 

Структура моих папок (я хочу изменить только один макет для каждого аромата):

my_project 
    src 
    res 
    res_flavor1 
    res_flavor2 

Я не вижу никаких изменений в вариантах сборки, поэтому, когда я экспортирую apk в свой основной каталог (androidstudio.test). Что не так с моим файлом?

Моя версия Android Studio: 0.1.3.

Если вам нужна дополнительная информация, скажите, что и я опубликую. Спасибо!

[EDIT]

@Greg:

Я изменил Рез-папку в моем вопросе выше, но я все еще получаю только два APK-в моем проекте «из» папки (путь: «из /production/androidstudio.test "): androidstudio.test.apk и androidstudio.test.unaligned.apk (название проекта и модуля: android.studio - я отредактировал это имя в моем вопросе выше, иначе его немного смущает :)).

Различные типы buildTypes должны создаваться автоматически, не так ли? И чтобы сгенерировать их, я перехожу к: Run -> Run "androidstudio.test".

Я также просмотрел файлы журнала андроид-студии, но нет ошибки.

Вот скриншот моего проводника пакетов, возможно, я сделал здесь ошибку? enter image description here

Я действительно не понимаю, почему ароматизаторы не строятся.

ответ

0

Вы хотите установить res.srcDirs = ['res_flavor1'] вместо resources.srcDir = ['res_flavor1']. Именование немного запутанно, но каталог «resources» не совпадает с каталогом «res» Android.

+0

Привет, Грег, спасибо за ваш комментарий. Я редактировал мой вопрос выше. Пожалуйста, помогите мне. Спасибо – owe

+1

Эй, я решил свою проблему. Моя ОС - Win7 (64 бит), и я не задал переменную JDK_HOME, поэтому град ничего не сделал ... @ Грег благодарит за вашу помощь и жаль, что я не заметил реальной проблемы :). – owe

+0

Теперь я попробовал ответ Грега, и это работает для меня. Благодарю. – owe