1

两天来,我试图在我的 Android 应用程序中创建 2 种不同的风格。我从 Eclipse 将我的应用程序导入到 Android Studio。我创建了另外 2 个 res 文件夹(res_testing 和 res_distribution)和另外 2 个 src 文件夹(src_testing 和 src_distribution)。这就是我的 build.gradle 的样子:

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

task wrapper(type: Wrapper) {
    gradleVersion = '1.6'
}

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
}

android {
  compileSdkVersion 17
  buildToolsVersion "18.0.1"

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

    productFlavors {
        flavor1 {
            packageName = 'com.comp.4u.testing'
        }
        flavor2 {
            packageName = 'com.comp.4u'
        }
    }
    android.sourceSets.flavor1{
        java.srcDirs = ['src_testing']
        resources.srcDirs = ['res_testing']
    }
    android.sourceSets.flavor2{
        java.srcDirs = ['src_distribution']
        resources.srcDirs = ['res_distribution']
    }
    instrumentTest.setRoot('tests')
  }
}

但是当我更改构建变量时,虽然应用程序构建正常,但它仍然使用与主 src 文件夹中相同的 DataManager 文件(尽管根据我给它们的名称我确实得到了两个不同的包)。

这让我疯狂!!我查看了 100 个论坛和帖子,但没有运气。

每个 DataManager 使用不同的 url 连接到服务器。这是我唯一想要的。

4

1 回答 1

0

我有一个类似的问题

当您从您的风味中覆盖的主文件夹中删除数据时会发生什么?您是否收到找不到 url 的错误?如果是,那么我认为它与我得到的错误相同。

我通过创建一个新项目并将所有文件复制到其中解决了这个问题。我认为从eclipse导出项目并导入到as中仍然存在一些问题。

于 2013-08-20T06:05:19.823 回答