【问题标题】:Android build fails after flavor is added添加风味后Android构建失败
【发布时间】:2018-09-08 02:28:30
【问题描述】:

在遵循 android 文档并为产品添加了风味之后,我已经准备好发布一个 react native 应用程序

flavorDimensions "version"
productFlavors {
    free {
        dimension "version"
        applicationId 'com.my-app.free'
    }
}

命令 react-native run-android 使 gradle 构建失败,并出现以下错误:

FAILURE:构建失败并出现异常。

  • 出了什么问题: 任务“:react-native-appboy-sdk:transformClassesWithDexForDebugAndroidTest”执行失败。

    com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexException: 多个dex文件定义Landroid/support /v4/accessibilityservice/AccessibilityServiceInfoCompat;

注意事项

  • 如果我在 gradle 文件中注释风味,命令运行没有任何问题。
  • 即使出现此错误,我也可以使用命令 ./gradlew assembleRelease 组装 apk 而不会出现任何错误。
  • 我可以使用 android studio 运行配置运行应用而没有任何错误,这似乎与添加风味和使用 react-native 命令运行有关

【问题讨论】:

    标签: react-native


    【解决方案1】:

    请在您的 android/build.gradle 文件中添加以下代码,希望对您有所帮助:

    android {
        dexOptions {
            preDexLibraries = false
        }
    }
    

    如果上述命令不起作用,请尝试以下命令:

    react-native run-android --variant=developmentDebug
    

    【讨论】:

    • 感谢您的来信,可惜问题依旧
    • 在查看了这个问题后,我发现this article 澄清了在添加产品风格后,如果不指定构建变体,您将无法构建您的 React Native 应用程序。正如您所指出的,使用变体将解决问题....然后出现另一个问题,即文章中描述的已知错误,但您可以使用 android studio 运行项目来解决它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-24
    • 1970-01-01
    相关资源
    最近更新 更多