Firebase Crashlytics 中模糊的堆栈跟踪

问题描述 投票:0回答:1

这里有人遇到过 Firebase Crashlytics 和 R8 混淆问题吗?我不断在控制台中看到模糊的堆栈跟踪。构建应用程序时,

mapping.txt
文件似乎已正确上传到 Crashlytics API:

2023-09-08T10:46:40.132+0200 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Executing request PUT /v1/project/-/app/[redacted]/upload/java/[redacted] HTTP/1.1
2023-09-08T10:46:40.132+0200 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Target auth state: UNCHALLENGED
2023-09-08T10:46:40.132+0200 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Proxy auth state: UNCHALLENGED
2023-09-08T10:46:41.794+0200 [DEBUG] [org.apache.http.impl.execchain.MainClientExec] Connection can be kept alive indefinitely
2023-09-08T10:46:41.795+0200 [DEBUG] [com.google.firebase.crashlytics] PUT response: [reqId=null] 200
2023-09-08T10:46:41.796+0200 [INFO] [com.google.firebase.crashlytics] Mapping file uploaded: [redacted]/build/outputs/mapping/qa/mapping.txt
2023-09-08T10:46:41.796+0200 [LIFECYCLE] [org.gradle.internal.operations.DefaultBuildOperationRunner] 
2023-09-08T10:46:41.796+0200 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationRunner] Completing Build operation 'Execute uploadMappingFile for :app:uploadCrashlyticsMappingFileQa'
2023-09-08T10:46:41.797+0200 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationRunner] Completing Build operation 'Executing task ':app:uploadCrashlyticsMappingFileQa''
2023-09-08T10:46:41.738+0200 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] 
2023-09-08T10:46:41.738+0200 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] > Task :app:uploadCrashlyticsMappingFileQa
2023-09-08T10:46:41.796+0200 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationRunner] Build operation 'Execute uploadMappingFile for :app:uploadCrashlyticsMappingFileQa' completed
2023-09-08T10:46:41.797+0200 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationRunner] Build operation 'Executing task ':app:uploadCrashlyticsMappingFileQa'' completed

此外,当在本地使用 R8 Retrace 以及从 Firebase 控制台下载的映射文件和堆栈跟踪时,它可以毫无问题地进行反混淆:

// this works fine and outputs the de-obfuscated stracktrace
./retrace [redacted]/app/build/outputs/mapping/qa/mapping.txt [redacted]/stack.txt

有什么想法吗? Firebase 似乎不再提供手动上传映射文件或在控制台中查看上传的映射文件的选项。

android firebase android-gradle-plugin crashlytics android-r8
1个回答
0
投票

是的,我在使用 Firebase Crashlytics 时遇到了这些问题,但在 android studio electric eel 2022.1.1 我给出的唯一解决方案是 将我的 build.grable 模块更新到以前的版本,它适用于 对我来说,这没什么帮助,但我希望它对你有用。

       // Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        google()
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.2.2'
        classpath 'com.google.gms:google-services:4.3.15'
        // firebase-crashlytics
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.5'
        classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.5.0"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
plugins {
    id 'com.android.application' version '7.4.2' apply false
    id 'com.android.library' version '7.4.2' apply false
}
allprojects {
    repositories {
    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}

//主模块

dependencies {
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.9.0'
implementation 'com.google.firebase:firebase-config'
implementation 'com.google.firebase:firebase-crashlytics'
implementation 'com.google.firebase:firebase-analytics:21.2.2'
implementation 'com.google.firebase:firebase-core:21.1.1'
//Firebase database
© www.soinside.com 2019 - 2024. All rights reserved.