【问题标题】:Disable mapping file (deob) upload on proguard build for Android Fabric/Crashlytics在 Android Fabric/Crashlytics 的 proguard 构建上禁用映射文件 (deob) 上传
【发布时间】:2018-07-01 05:35:03
【问题描述】:

使用 proguard 的 Android 应用:

Crashlytics 会自动上传映射文件以覆盖您的构建变体。 https://docs.fabric.io/android/crashlytics/dex-and-proguard.html#gradle

我们需要摆脱这个警告,因为我们的竹构建代理没有外部连接。

WARN - Crashlytics had a problem uploading the deobs file. 
Please check network connectivity and try again.
build   22-Jan-2018 15:20:18    
com.crashlytics.reloc.org.apache.http.conn.HttpHostConnectException: Connect to cm.crashlytics.com:443

我们如何禁用此上传功能?

编辑 - 澄清:我们不想为此版本禁用 crashlytics;事实上我们需要它。我们只想禁用映射文件的上传,因为我们在这个代理上没有外部连接。

提前致谢。

【问题讨论】:

  • 您是否还在寻找混淆代码但不想上传映射文件?
  • 嗨,是的,我想混淆代码并使用 crashlytics 但跳过映射文件上传(在构建代理上)。
  • 知道了。当 minifyEnabled 为 TRUE 并且没有映射文件时,无法禁用该上传,您将看不到去混淆的堆栈跟踪。您是在本地构建上上传映射文件吗?如果是这样,该消息只是一个警告,不会影响您的构建。
  • 好的,谢谢。我只是想知道,因为我们的构建代理似乎很难成功构建(失败 4/5 次),并且“连接被拒绝”是日志中的第一个异常之一。因此,我有兴趣摆脱它并分析其影响。 (我现在尝试一些禁用 crashlytics 但缩小的构建)

标签: android gradle crashlytics google-fabric


【解决方案1】:

您可以通过将特定任务的顶级 build.gradle 文件中的 enabled-flag 设置为 false 来禁用任务。

subprojects {
    tasks.whenTaskAdded { task ->
        boolean isCrashlyticsTask = task.name.toLowerCase().contains("crashlytics")
        if (isCrashlyticsTask) {
            task.enabled = false
        }
    }
}

【讨论】:

    【解决方案2】:

    怎么样:

    android {
        buildTypes {
            debug {
              ext.enableCrashlytics = false
              ...
    

    crashlytics documentation

    【讨论】:

    • 嗨,不,我不想只禁用 crashyltics 和映射文件的上传。
    • 但这不一样吗?还是要手动去混淆?
    • 不,我不想禁用 crashlytics,我们需要错误报告;但我不想上传映射文件(因为构建在没有互联网连接的构建代理上运行并且无论如何都会失败)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-03
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    • 1970-01-01
    相关资源
    最近更新 更多