android - Gradle 复制替换文本并放入同一个文件夹

标签 android gradle

copy{
            from('res/values'){
                include 'myfile.xml'
            }
            into 'res/values'

            filter{
                String line -> line.replaceAll("<!--<string name=\"test\">test</string>-->", "<string name=\"id\">test</string>")
            }
        }

我上面有以下内容,它在构建特定风格时采用 xml 文件并取消注释/替换文本。如果我将文件复制到不同的目录但我想放置文件并将其与替换文本放在同一目录中,这将起作用。上面的代码只会删除文件的全部内容。

最佳答案

我是 Gradle 的新手,所以我不确定这是否是最好的方法,但我在我的 Windows 机器上使用了一些这样的任务:

task update_project << {
    def proj = file("$someProjectFile")
    def text = proj.getText("UTF-8")
    def replacement = "2"
    text = text.replaceAll("  something = 1;", "  something = ${replacement};")
    proj.write(text, "UTF-8")
}

只要我每次构建它都可以,它似乎工作得很好。

关于android - Gradle 复制替换文本并放入同一个文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21173011/

相关文章:

java - 拦截应用程序发出的套接字调用并将其映射到自定义套接字

gradle - 是否可以设置两个以上的gradle项目?

gradle - 如何使用 Gradle Kotlin-DSL 添加本地资源

android - ionic 运行android-错误评估CordovaLib

android - Windows上的Gradle命令行字符限制

android - 如何创建几个月后调用的警报?

java - 如何通过 API 从维基数据项中获取图像 URL 属性?

Android,Autocompletetextview,强制文本来自条目列表

Android 海拔阴影出现在 Android Studio 预览中但不出现在我的 KitKat 设备上

gradle - 错误:Support for clients using a tooling API version older than 3. 0已在Gradle 5.0中删除