【问题标题】:Define a variable in build.gradle and use that value in network XML file在 build.gradle 中定义一个变量并在网络 XML 文件中使用该值
【发布时间】:2021-07-12 13:53:07
【问题描述】:

在 build.gradle 文件中我必须定义一个布尔值

buildConfigField("boolean", "SKIP_SSL_CHECK", "true")

所以我想在 network.xml 文件中访问它

 <?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="${SKIP_SSL_CHECK}" /
    <debug-overrides>
        <trust-anchors>
            <certificates src="user" />
        </trust-anchors>
    </debug-overrides>
</network-security-config>

我想根据构建变体改变该值 对于调试,它应该是真的,对于其他人来说,它应该是假的。

提前致谢

【问题讨论】:

    标签: android kotlin gradle


    【解决方案1】:

    很遗憾,XML 资源中没有清单占位符或其他类型的变量选项。

    但是,您可以在与特定构建变体相关联的源集中拥有多个版本的资源,cleartextTrafficPermitted 具有不同的值:

    • app/src/debug/res/xml/ 中,输入您的资源的debug 版本
    • app/src/main/res/xml/ 中,放入资源的 release 版本

    【讨论】:

    • 我也试过这个,但不知何故,当我从工作室运行代码时它工作正常,但是当 Jenkins 创建一个构建并共享它时它不起作用(显示 SSL 错误无法跳过ssl检查)
    猜你喜欢
    • 2021-04-25
    • 2019-05-29
    • 1970-01-01
    • 2018-06-16
    • 1970-01-01
    • 1970-01-01
    • 2013-05-18
    • 2011-01-14
    • 1970-01-01
    相关资源
    最近更新 更多