gpt4 book ai didi

android - 如何尽早在 build.gradle 中获取构建类型

转载 作者:行者123 更新时间:2023-11-29 16:33:41 26 4
gpt4 key购买 nike

我有一个 React Native 应用程序,我试图在 project.ext.react 中指定用于存储生成的源映射的文件夹。像这样(我需要它来实现一个库来帮助我调试 JS 错误)

project.ext.react = [
...
extraPackagerArgs : [ "--sourcemap-output", "$buildDir/intermediates/assets/$buildType/index.android.bundle.map" ]
]

显然,路径应该类似于 <buildDir>/intermediates/assets/<buildType>/index.android.bundle.map

(例如 <buildDir>/intermediates/assets/release/index.android.bundle.map如果发布和<buildDir>/intermediates/assets/debug/index.android.bundle.map在调试的情况下)

在引用了 StackOverflow 和外部的几个答案后,我得到了 buildType在 build.gradle 中首先声明它然后分配它:

//3rd line of build.gradle
def buildType
....
//much later
applicationVariants.all { variant ->
buildType = variant.buildType.name
....

但是,这会导致一个问题 buildType在使用后被初始化很多,所以输出路径变成类似于 <buildDir>/intermediates/assets/null/index.android.bundle.map 的东西,从而使我的整个过程失败。有没有办法提前获取构建类型?

最佳答案

我终于找到了一种方法(虽然不是很干净)来查看 gradle 任务数组:

def buildType = gradle.startParameter.taskNames.any{it.toLowerCase().contains("debug")}?"debug":"release"

关于android - 如何尽早在 build.gradle 中获取构建类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53260897/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com