我一直在拼命试图将我的游戏符号上传到crashlytics(gradlew uploadCrashlyticsSymbolFileRelease),并且始终失败:
GC overhead limit exceeded
[我已经尝试过什么...我要确保我的守护进程有很多记忆可玩:
-XX:MaxHeapSize=32g,-XX:MaxPermSize=4096m,-XX:+HeapDumpOnOutOfMemoryError,-Xmx4g
也在build.gradle:
dexOptions {
maxProcessCount 2
javaMaxHeapSize "16g"
}
使用debug和callstack运行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的已知问题。建议我将gradle插件降级到1.27.0版,但仍然存在问题。