2013-06-14 53 views
5

Tôi muốn xây dựng hương vị khác nhau của một dự án (chỉ có các thư mục res có nội dung khác nhau), nhưng nó không hoạt động.được xây dựng hương vị của một dự án

Vì vậy, đây là tập tin build.gradle của tôi (như trong câu hỏi này 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" 
      } 
     } 
    } 
} 

Cấu trúc thư mục của tôi (tôi muốn thay đổi chỉ là một bố trí cho mỗi hương vị):

my_project 
    src 
    res 
    res_flavor1 
    res_flavor2 

Tôi không thấy bất kỳ thay đổi nào trong các biến thể xây dựng, vì vậy khi tôi xuất một gói ứng dụng của thư mục chính (androidstudio.test). Có gì sai với tệp của tôi?

Phiên bản Android Studio của tôi: 0.1.3.

Nếu bạn cần thêm thông tin, hãy nói những gì và tôi sẽ đăng nó. Cảm ơn!

[EDIT]

@ Greg:

Tôi đã thay đổi res-thư mục trong câu hỏi của tôi ở trên, nhưng tôi vẫn nhận được chỉ là hai gói ứng dụng trong dự án của tôi "out" thư mục (đường dẫn: "ra /production/androidstudio.test "): androidstudio.test.apk và androidstudio.test.unaligned.apk (tên dự án và mô-đun là: android.studio - Tôi đã chỉnh sửa tên này trong câu hỏi của mình ở trên, nếu không thì sẽ hơi khó hiểu :)).

Các buildTypes khác nhau sẽ được tạo tự động, phải không? Và để tạo ra chúng tôi đi đến: Run -> Run "androidstudio.test".

Tôi cũng đã xem các tệp nhật ký của android-studio nhưng không có lỗi.

Đây là Ảnh chụp màn hình Trình khám phá Gói của tôi, có lẽ tôi đã mắc lỗi ở đây? enter image description here

Tôi thực sự không hiểu tại sao hương vị không được xây dựng.

Trả lời

0

Bạn muốn đặt res.srcDirs = ['res_flavor1'] thay vì resources.srcDir = ['res_flavor1']. Việc đặt tên hơi khó hiểu, nhưng thư mục "tài nguyên" không giống với thư mục "res" của Android.

+0

Xin chào Greg, cảm ơn nhận xét của bạn. Tôi đã chỉnh sửa câu hỏi của mình ở trên. Làm ơn giúp tôi. Cảm ơn – owe

+1

Xin chào, tôi đã giải quyết được vấn đề của mình. Hệ điều hành của tôi là Win7 (64bit) và tôi đã không thiết lập một biến JDK_HOME, vì vậy gradle đã không làm gì ... @ Greg cảm ơn sự giúp đỡ của bạn và xin lỗi rằng tôi đã không nhận thấy vấn đề thực sự :). – owe

+0

Bây giờ tôi đã thử câu trả lời của Greg và nó hoạt động cho tôi. Cảm ơn. – owe

Các vấn đề liên quan