Finally I found out how to do this, I will explain it here for others facing same problem:android
The key part is to set publishNonDefault to true in library build.gradle, Then you must define dependencies as suggested by user guide.android-studio
The whole project would be like this:app
Library build.gradle:ide
apply plugin: 'com.android.library' android { .... publishNonDefault true productFlavors { market1 {} market2 {} } }
project build.gradle:gradle
apply plugin: 'com.android.application' android { .... productFlavors { market1 {} market2 {} } } dependencies { .... market1Compile project(path: ':lib', configuration: 'market1Release') market2Compile project(path: ':lib', configuration: 'market2Release') }
Now you can select the app flavor and Build Variants panel and the library will be selected accordingly and all build and run will be done based on the selected flavor.ui
If you have multiple app module based on the library Android Studio will complain about Variant selection conflict, It's ok, just ignore it.this
其餘參考code
https://stackoverflow.com/questions/24307596/how-can-i-add-flavors-in-a-module-with-android-studioip