相关疑难解决方法(0)

Crashlytics Generate Symbols gradle 步骤失败:超出 GC 开销限制

我正在将一个项目从 gradle 版本 3.3 转换为 4.10.1。该项目主要是使用自定义构建步骤构建的 C++ 代码 - 而不是 CMake (externalNativeBuild) 或 Android.mk(ndkBuild)。它产生以下库:

armeabi-v7a unstripped: 883.2MB
arm64-v8a unstripped: 864.6MB
armeabi-v7a stripped: 15.6MB
arm64-v8a stripped: 23.9MB
Run Code Online (Sandbox Code Playgroud)

构建过程在 crashlyticsGenerateSymbolsGoogleDistribution 步骤失败,并显示错误 OutOfMemoryError: GC Overhead Limit Exceeded。

是否有为 crashlytics 插件步骤提供更多内存的方法或参数?


顶级 gradle.properties 文件包含以下 jvm 参数: org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=512m- 尽管我已经尝试了org.gradle.jvmargs=-Xmx12g:MaxPermSize=2g. 这些值的更改似乎不会影响 crashlyticsGenerateSymbols 步骤。

如果我运行 assembleGoogleDistribution 构建,跳过 crashlytics 步骤,构建将顺利完成。

构建堆栈跟踪:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':application:crashlyticsGenerateSymbolsGoogleDistribution'.
> GC overhead limit exceeded

* Try:
Run …
Run Code Online (Sandbox Code Playgroud)

crashlytics google-fabric

9
推荐指数
1
解决办法
732
查看次数

将符号上传到 Firebase Crashlytics 时出错

我使用 crashalytics 设置了一个 firebase 项目,我可以在仪表板上看到 Java 和 NDK 崩溃。我正在尝试按照https://firebase.google.com/docs/crashlytics/ndk-reports#upload_native_symbols上传符号。我还尝试关注https://medium.com/@aungkyawmyint_26195/setting-up-ndk-crashlytics-android-11ad775676f7等博客,但到目前为止尚未成功。

这是我的环境

Android Studio 3.5
Build #AI-191.8026.42.35.5791312, built on August 8, 2019
JRE: 1.8.0_202-release-1483-b49-5587405 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.14.6

implementation 'com.google.firebase:firebase-analytics:17.2.0'
implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
implementation 'com.crashlytics.sdk.android:crashlytics-ndk:2.1.0'
Run Code Online (Sandbox Code Playgroud)

当我跑步时

./gradlew crashlyticsUploadSymbolsDebug --stacktrace
Run Code Online (Sandbox Code Playgroud)

在我的 app/build.gradle 中如下

crashlytics {
    enableNdk true
    androidNdkOut 'build/intermediates/cmake/debug/obj'
    androidNdkLibsOut 'build/intermediates/cmake/release/obj'
    manifestPath 'src/main/AndroidManifest.xml'
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

> Task :app:externalNativeBuildDebug
Build native-lib_armeabi-v7a
ninja: no work to do.
Build native-lib_arm64-v8a
ninja: no work to do.
Build …
Run Code Online (Sandbox Code Playgroud)

android cmake android-ndk firebase crashlytics

6
推荐指数
1
解决办法
5503
查看次数