android - 将项目从Eclipse导入Android Studio时在gradle中使用Flavors

标签 android gradle android-studio build.gradle

现在有两天,我试图在我的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')
  }
}

但是,当我更改Build Varients时,尽管该应用程序生成正常,但仍使用与主src文件夹中相同的DataManager文件(尽管我确实根据给定的名称获得了两个不同的程序包)。

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

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

最佳答案

我有一个similar problem

当从主文件夹中删除 flavor 中覆盖的数据时会发生什么?
是否收到找不到网址的错误?如果是的话,那么我会得到相同的错误。

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

关于android - 将项目从Eclipse导入Android Studio时在gradle中使用Flavors,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18113721/

相关文章:

android - 无法在 Flutter 中使用 Firebase Auth 进行注册

Android Studio 2.2 约束布局按钮不可见

file - 日志文件不会生成完整的日志,尽管执行已完成

Android Studio Gradle 项目刷新失败 :Configuration with name 'default' not found

Android studio 无法打开监视器(DDMS)

java - mac M1 上的 Android Studio

java - Android获取ArrayList中的所有联系人电话号码

Android Volley 加载速度慢并卡住进度对话框

java - 如何允许用户更改 Gradle 中插件使用的库的版本?

java - Android:启动抽屉布局时出现内存不足错误