为React Native配置源映射

时间:2019-01-26 14:17:32

标签: android react-native source-maps

我正在尝试为我的RN应用创建源地图,这是我的第一次,所以请放轻松。

我找到了一个react-native-source-maps软件包来完成此任务,我试图了解如何继续配置Android端。

在链接中提到

def jsBundleMapFile = "${jsBundleFile}.map"

def devEnabled = !targetName.toLowerCase().contains("release")
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
    commandLine("cmd", "/c", *nodeExecutableAndArgs, "node_modules/react-native/local-cli/cli.js", "bundle", "--platform", "android", "--dev", "${devEnabled}",
            "--reset-cache", "--entry-file", entryFile, "--bundle-output", jsBundleFile, "--assets-dest", resourcesDir, "--sourcemap-output", jsBundleMapFile, *extraPackagerArgs)
} else {
    commandLine(*nodeExecutableAndArgs, "node_modules/react-native/local-cli/cli.js", "bundle", "--platform", "android", "--dev", "${devEnabled}",
            "--reset-cache", "--entry-file", entryFile, "--bundle-output", jsBundleFile, "--assets-dest", resourcesDir, "--sourcemap-output", jsBundleMapFile, *extraPackagerArgs)
}

下面是我的react.gradle,我不确定要将代码粘贴到哪一部分。我相信react.gradle中最接近的相关部分在下面,但不确定在上面放置哪一部分代码以及是否会破坏当前的gradle版本

// Set up dev mode
  def devEnabled = !(config."devDisabledIn${targetName}"
                || targetName.toLowerCase().contains("release"))

  def extraArgs = extraPackagerArgs;

  if (bundleConfig) {
      extraArgs = extraArgs.clone()
      extraArgs.add("--config");
      extraArgs.add(bundleConfig);
  }

  if (Os.isFamily(Os.FAMILY_WINDOWS)) {
    commandLine("cmd", "/c", *nodeExecutableAndArgs, cliPath, bundleCommand, "--platform", "android", "--dev", "${devEnabled}",
                    "--reset-cache", "--entry-file", entryFile, "--bundle-output", jsBundleFile, "--assets-dest", resourcesDir, *extraArgs)
            } else {
    commandLine(*nodeExecutableAndArgs, cliPath, bundleCommand, "--platform", "android", "--dev", "${devEnabled}",
                    "--reset-cache", "--entry-file", entryFile, "--bundle-output", jsBundleFile, "--assets-dest", resourcesDir, *extraArgs)
  }

  enabled config."bundleIn${targetName}" ||
                config."bundleIn${variant.buildType.name.capitalize()}" ?:
                targetName.toLowerCase().contains("release")

0 个答案:

没有答案