【问题标题】:Crashlytics symbols upload fails with "GC overhead limit exceeded"Crashlytics 符号上传失败并显示“超出 GC 开销限制”
【发布时间】:2020-05-21 00:31:58
【问题描述】:

我一直在拼命尝试将我的游戏符号上传到 crashlytics (gradlew uploadCrashlyticsSymbolFileRelease),但一直失败:

GC overhead limit exceeded

我已经尝试过什么...我确保我的守护进程有很多内存可以玩:

-XX:MaxHeapSize=32g,-XX:MaxPermSize=4096m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx4g

也在 build.gradle 上:

dexOptions {
        maxProcessCount 2
        javaMaxHeapSize "16g"
    }

使用调试和调用堆栈运行uploadCrashlyticsSymbolFileRelease,显示:

[org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
[org.gradle.process.internal.health.memory.MemoryManager] Emitting OS memory status event {Total: 17101328384, Free: 1893560320}
[org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded

我还删除了 gradle 注册表文件夹,但到目前为止没有任何效果。 周一联系了 Firebase 支持,但也没有得到回复。

我正在使用以下版本:

implementation 'com.google.firebase:firebase-analytics:17.4.1'
implementation 'com.google.firebase:firebase-crashlytics-ndk:17.0.0'

这在我拥有的另一款游戏上运行良好。

【问题讨论】:

  • 遇到同样的问题

标签: firebase crashlytics crashlytics-android


【解决方案1】:

显然这是 Firebase 的一个已知问题。有人建议我将 gradle 插件降级到 1.27.0 版本,但我仍然有这个问题。

【讨论】:

  • 是的,不幸的是,这是一个已知问题,解决方法是在旧版 SDK 上将您的 Fabric 构建工具版本降级到 v1.28.0 或 v1.27.0,如您所述。虽然如果您在使用这些版本时仍然看到这个确切的错误,我会说这仍然是意外行为,因为已知此解决方法有效。
【解决方案2】:

我一直在尝试降级,但没有关于如何正确设置 1.27 版本的文档。而且我使用 1.27 的新版本游戏不会向控制台发送任何崩溃信息。

这就是我所做的。在 root build.grande 中包含

classpath 'io.fabric.tools:gradle:1.27.0'

然后在应用程序 build.gradle...

在顶部:

io.fabric.tools:gradle:1.27.0

在android标签内:

crashlytics {
    enableNdk true
    androidNdkOut ...    androidNdkLibsOut .....
}

关于依赖:

implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
implementation 'com.crashlytics.sdk.android:crashlytics-ndk:2.1.1'

在 Java 上,将其包含在 onCreate 事件中:

Fabric.with(this, new Crashlytics(), new CrashlyticsNdk());

进口:

import io.fabric.sdk.android.Fabric;
import com.crashlytics.android.Crashlytics;
import com.crashlytics.android.ndk.CrashlyticsNdk;

我错过了什么?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-18
    • 2015-10-30
    • 2011-05-21
    • 1970-01-01
    • 2019-01-18
    • 2017-12-27
    • 2013-07-13
    • 2018-03-29
    相关资源
    最近更新 更多