Android用于发布和调试版本的单独字符串值

每次我发布我的应用程序时,我都会将所有的url字符串和一些从测试更改为生产。 我这样做的方法就是在发布之前注释掉测试字符串。 有没有更好的方法来处理基于构建types的字符串?

假设您使用Android Studio,默认情况下系统会创建基本releasedebug风格。 因此,如果在项目的app/src文件夹中添加debugrelease文件夹,则可以在那里声明单独的值。

所以你的结构应该是这样的:

 project -app -src -debug -java ... -res -values -strings.xml -release -java ... -res -values -strings.xml -main -java ... -res -values -strings.xml 

我还应该补充一点,如果你有一个未在debugrelease文件夹中定义的字符串,它将回退到你的main文件夹。

只需在build.gradle中创建两种风格。 然后是两个目录,再次在链接中给出(developer.android.com/tools/building/configuring-gradle.html)。 由于您只需要更改字符串,只需将strings.xml文件复制到新目录(即开发和生产)中删除原始strings.xml

就是这样。 🙂

无需移动您的java文件或其他布局文件。

简而言之,将“main”目录中的所有内容保留在所有构建版本中应保持一致。 将依赖于构建flavor的值重写到其各自的目录中。