Android 产品风味不起作用
The Android Product Flavors doesn't work
我创建了 2 种口味 (com.example.admin.deb) 和 (com.example.admin.lab_127) 这两个包之间的区别在于 MainActivity.java 文件(只有两行的代码)。在 build.gradle 我创建了
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.example.admin.deb"
minSdkVersion 18
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors{
pro {
applicationId "com.example.admin.lab_127"
}
deb {
applicationId "com.example.admin.deb"
dependencies {
compile 'com.jakewharton:butterknife:5.1.2'
compile 'com.squareup.picasso:picasso:2.3.4'
compile 'org.lucasr.dspec:dspec:0.1.1'
}
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.+'
}
但是当我不更改 Build Variant 时 happens.My 文件夹结构如下:
-app
----manifests
------------AndroidManifest.xml
----java
--------com.example.admin.deb
-----------MainActivity.java
--------com.example.admin.lab_127
-----------data
-----------ItemAdapter.java
-----------MainActivity.java
----res
那我做错了什么?提前致谢。
如果您想在两种口味中使用相同 class 的不同版本,您需要在两种口味中创建它并且 不要将其放入 src/main/java。你的情况:
src/deb/java/com/example/admin/deb/MainActivity.java
src/pro/java/com/example/admin/deb/MainActivity.java
您应该实现下一个结构:
app
src
deb
java
com.example.admin.deb
MainActivity.java
main
java
com.example.admin.deb
res
pro
java
com.example.admin.deb
MainActivity.java
我创建了 2 种口味 (com.example.admin.deb) 和 (com.example.admin.lab_127) 这两个包之间的区别在于 MainActivity.java 文件(只有两行的代码)。在 build.gradle 我创建了
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.example.admin.deb"
minSdkVersion 18
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors{
pro {
applicationId "com.example.admin.lab_127"
}
deb {
applicationId "com.example.admin.deb"
dependencies {
compile 'com.jakewharton:butterknife:5.1.2'
compile 'com.squareup.picasso:picasso:2.3.4'
compile 'org.lucasr.dspec:dspec:0.1.1'
}
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.+'
}
但是当我不更改 Build Variant 时 happens.My 文件夹结构如下:
-app
----manifests
------------AndroidManifest.xml
----java
--------com.example.admin.deb
-----------MainActivity.java
--------com.example.admin.lab_127
-----------data
-----------ItemAdapter.java
-----------MainActivity.java
----res
那我做错了什么?提前致谢。
如果您想在两种口味中使用相同 class 的不同版本,您需要在两种口味中创建它并且 不要将其放入 src/main/java。你的情况:
src/deb/java/com/example/admin/deb/MainActivity.java
src/pro/java/com/example/admin/deb/MainActivity.java
您应该实现下一个结构:
app
src
deb
java
com.example.admin.deb
MainActivity.java
main
java
com.example.admin.deb
res
pro
java
com.example.admin.deb
MainActivity.java