Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何集成共享同一代码的两个ProductFlavor之一的额外文件_Android_Android Studio_Android Productflavors - Fatal编程技术网

Android 如何集成共享同一代码的两个ProductFlavor之一的额外文件

Android 如何集成共享同一代码的两个ProductFlavor之一的额外文件,android,android-studio,android-productflavors,Android,Android Studio,Android Productflavors,我开发了一个应用程序,我是在登台环境下开发的,现在将其部署到生产环境,该应用程序将上传到google play store。因此,对于这两个环境应用程序,我使用的是productFlavors,它将构建在build gradle文件中定义的不同变量 我的问题是:我有一些java文件必须包含在 生产生成,但不进入暂存生成。我怎样才能做到这一点 解决方案之一:当我选择构建变体时,我会添加/删除java文件,这不是合适的解决方案,因为我将来会在生产中添加更多java文件来更新应用程序 编辑:我不想为不

我开发了一个应用程序,我是在
登台环境下开发的
,现在将其部署到
生产环境
,该应用程序将上传到google play store。因此,对于这两个环境应用程序,我使用的是
productFlavors
,它将构建在build gradle文件中定义的不同变量

我的问题是:我有一些java文件必须包含在 生产生成,但不进入暂存生成。我怎样才能做到这一点

解决方案之一:当我选择构建变体时,我会添加/删除java文件,这不是合适的解决方案,因为我将来会在生产中添加更多java文件来更新应用程序


编辑:我不想为不同的口味创建不同的src文件夹。不制作不同的文件夹难道不可能吗?正如我已经提到的,我为不同的风格编写了相同的代码。

您在主目录旁边的src目录中创建了一个文件夹,您将在其中为一种风格添加文件。例如:

- src/
-- main/
-- production/

您将额外的Java文件放在新文件夹中,这些文件应该只在产品版本中。

如果没有,可能会重复,无法添加文件?还有别的办法吗?从你的评论和编辑来看,我不太明白你的问题。我不明白你为什么不想添加文件夹。您的意思是说您有两种以上的风格,例如,您希望在风格1和2中共享相同的代码,但在风格3中不共享相同的代码吗?我只希望两种风格共享相同的代码,但需要在生产一中添加一些文件。最好的方法是什么。这就是为什么你把所有要共享的代码都放进
main
。您可以重构代码,以便在
staging
production
文件夹中只包含引用您添加的文件的部分(staging和production之间不同的代码)。然后在
生产
中添加额外的文件,这些文件仅由生产代码引用。所有共享代码都保留在
main
中。