Div*_*nka 3 android gradle node.js android-gradle-plugin react-native
我有一个 React Native 应用程序,我正在尝试指定用于存储生成的源映射的文件夹,如下所示project.ext.react(我需要它来实现一个可以帮助我调试 JS 错误的库)
project.ext.react = [
...
extraPackagerArgs : [ "--sourcemap-output", "$buildDir/intermediates/assets/$buildType/index.android.bundle.map" ]
]
Run Code Online (Sandbox Code Playgroud)
显然,路径应该是这样的<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
....
Run Code Online (Sandbox Code Playgroud)
然而,这导致了一个问题,即buildType在使用后很长时间才进行初始化,因此输出路径变得类似于<buildDir>/intermediates/assets/null/index.android.bundle.map,从而使我的整个过程失败。有没有办法提前获取构建类型?
我终于找到了一种方法(尽管它不是一个很干净的方法)来查看 gradle 任务数组:
def buildType = gradle.startParameter.taskNames.any{it.toLowerCase().contains("debug")}?"debug":"release"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2178 次 |
| 最近记录: |