Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 一两次之后,它突然开始工作了_Android_Firebase_Crashlytics_Google Fabric - Fatal编程技术网

Android 一两次之后,它突然开始工作了

Android 一两次之后,它突然开始工作了,android,firebase,crashlytics,google-fabric,Android,Firebase,Crashlytics,Google Fabric,它还帮助我为fabric和crashlytics启用额外的调试日志记录 adb shell setprop log.tag.Fabric DEBUG adb shell setprop log.tag.CrashlyticsCore DEBUG 我发布这个答案是为了让它能够正常工作,而不必从Firebase Crashlytics上断开应用程序的链接 要做到这一点,他们必须做到以下几点: 将结构API键添加回AndroidManifest作为metadata <meta-data

它还帮助我为fabric和crashlytics启用额外的调试日志记录

adb shell setprop log.tag.Fabric DEBUG
adb shell setprop log.tag.CrashlyticsCore DEBUG

我发布这个答案是为了让它能够正常工作,而不必从
Firebase Crashlytics
上断开应用程序的链接

要做到这一点,他们必须做到以下几点:

将结构API键添加回
AndroidManifest
作为
metadata

<meta-data
          android:name="io.fabric.ApiKey"
          android:value="fabric_api_key"
/>

完成这两个步骤后,
Crashlytics
将在不断开应用链接的情况下重新开始工作。

我发现,在转换为FirebaseCrashlytics后,我必须在Firebase注销并重新注册我的现有应用

adb shell setprop log.tag.Fabric DEBUG
adb shell setprop log.tag.CrashlyticsCore DEBUG
在运行应用程序进行FirebaseCrashlytics初始注册(控制台等待初始注册)之前,请确保将应用程序运行到以下位置,否则它将不会注册:

这些都不是显而易见的

升级至Firebase Crashlytics SDK& 现在,您可以使用新的官方Firebase Crashlytics SDK在应用程序中设置Crashlytics,该SDK提供了与其他Firebase产品更一致、使用更直观的改进API。本指南介绍如何从Fabric Crashlytics SDK升级到新SDK。它描述了新API带来的更改、更改的原因以及如何更新代码(如果需要)


安卓 先决条件:将应用程序迁移到AndroidX

1.添加Firebase配置文件
  • 打开你的门
  • 单击下载google-services.json以获取Firebase Android配置文件
  • 将配置文件移动到应用程序的模块(应用程序级)目录中

  • 2.切换依赖项 (项目级)/build.gradle 不推荐来自:

    buildscript {
      // ...
    
       repositories {
           // ...
    
    致:

    (应用程序级)/build.gradle 最后,添加Firebase Crashlytics SDK。在应用程序级别build.gradle中,用新的Firebase Crashlytics SDK替换旧结构Crashlytics SDK。为了获得Firebase Crashlytics的最佳体验,我们还建议将Firebase SDK For Google Analytics添加到您的应用程序中(确保添加版本17.2.3或更高版本,以获得实时无崩溃用户和面包屑)

    不推荐来自:

    apply plugin: 'com.android.application'
    
    // Apply the Google Services plugin (if it's not there already).
    apply plugin: 'com.google.gms.google-services'
    
    致:


    更新你的代码
    • Crashlytics.log现在是一种实例方法
    来自Fabric:
    Crashlytics.log(“我的消息”)

    到Firebase Crashlytics SDK:

    FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
    // To log a message to a crash report, use the following syntax:
    crashlytics.log("E/TAG: my message");
    
    throw RuntimeException("Test Crash")
    
    • 崩溃方法被删除
    从结构:
    Crashlytics.getInstance().crash()

    到Firebase Crashlytics SDK:

    FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
    // To log a message to a crash report, use the following syntax:
    crashlytics.log("E/TAG: my message");
    
    throw RuntimeException("Test Crash")
    
    现在,FirebaseCrashlytics使用 新Firebase Crashlytics SDK中定义的ContentProvider。去除 如果存在对Fabric.with()的调用。如果您已经在使用Firebase Crashlytics,您的应用程序可能已经在使用自动启动,并且可能 不包含对Fabric.with()的调用


    GL

    我在Firebase SDK升级到17.0.0+版本时遇到了这个问题

    这个问题是由我们使用多种口味引起的。如果您使用单独的flavor-debug并将其链接到firebase,那么我们必须将特定于flavor的json文件添加到flavor-app->src->(flavor文件夹)的相应文件夹中,而不是将google-services.json文件添加到app根目录中

    这将确保生成的代码具有正确的客户机id


    这是一个愚蠢的错误,但人们很可能会错过它。

    首先,您必须在控制台中的项目中的Crashlytics选项卡中启用Crashlytics(在添加Crashlytics的所有依赖项之前或之后),或者按照本文中介绍的步骤进行操作 链接:

    -我也有同样的问题,原因是我没有连接到互联网。嗨!您是否可以运行./gradlew assemble--在更改不同口味时刷新依赖项?如果这会导致崩溃,请告诉我。:)嗨,托德,谢谢你的建议。这似乎没有帮助。然而,我发现两种口味之间有一个区别。所有未向Firebase发送崩溃的服务器在Firebase控制台的settings/accountlinking/fabric下都有一个条目,但是,正常工作的服务器没有链接的条目,即使它在Fabric中显示为链接。这让我相信它是Firebase/Fabric团队的东西。我没有accountlinking,但是有一个集成选项卡,但不包含Fabric。ps我有业主许可证我也有同样的问题。具有两种口味的应用程序。所以最后在Firebase我有6个应用程序。现在他们中只有两个跟踪数据到Firebase Crashlytics。不幸的是,我不能理解你的想法。在Firebase控制台>项目设置>帐户链接>我看不到结构选项。此外,在Fabric中,我的所有应用程序都未连接到Firebase。而且,当我尝试连接它们时,Fabric说一些已经连接好了。它让我疯狂…
    Confim in Fabric>App>Firebase-它被解除链接对我来说毫无意义,但在做了所有其他事情之后,它工作了。真糟糕,这是最好的解决办法。老兄,你帮我解决了好长时间的头痛。做得好。仅供参考,您可以更新firebaseconsole->project settings->在任何地方都没有帐户链接选项。幸运的是,Fabric linked apps->linked apps Manage-在firebase中打开了我无法找到的页面。但这确实奏效了。他们让做这么简单的事情变得如此困难;(链接/取消链接对我的场景没有意义,因为结构帐户已被删除。从清单中删除io.Fabric.ApiKey对我来说很有效。对我来说,原因是“检索设置失败”错误是我没有在仪表板上初始化Firebase。我模拟了我的第一次崩溃,它工作正常。如果您没有在Firebase控制台中激活crashlytics,您将收到相同的错误。它帮助我清理了我的项目,并
    
    buildscript {
      // ...
    
       repositories {
           // ...
    
           // Remove Fabric's Maven repository.
           maven { url 'https://maven.fabric.io/public' }
    
           // Add Google's Maven repository (if it's not there already).
           google()
       }
    
        dependencies {
            // ..
    
            // Add the Google Services Gradle plugin (if it's not there already).
            classpath 'com.google.gms:google-services:4.3.3'
    
           // Remove the Fabric Gradle plugin.
           classpath 'io.fabric.tools:gradle:1.31.2'
    
        }
    }
    
    buildscript {
      // ...
    
       repositories {
           // ...
    
           // Add Google's Maven repository (if it's not there already).
           google()
       }
    
        dependencies {
            // ..
    
            // Add the Google Services Gradle plugin (if it's not there already).
            classpath 'com.google.gms:google-services:4.3.3'
    
            // Add the Firebase Crashlytics Gradle plugin.
            classpath 'com.google.firebase:firebase-crashlytics-gradle:2.1.0'
        }
    }
    
    apply plugin: 'com.android.application'
    
    // Apply the Google Services plugin (if it's not there already).
    apply plugin: 'com.google.gms.google-services'
    
    // Remove the Fabric plugin.
    apply plugin: 'io.fabric'
    
    dependencies {
    
        // Remove the Fabric Crashlytics SDK.
        implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
    
        // Recommended: Add the Google Analytics SDK.
        implementation 'com.google.firebase:firebase-analytics:17.4.1'
    }
    
    apply plugin: 'com.android.application'
    
    // Apply the Google Services plugin (if it's not there already).
    apply plugin: 'com.google.gms.google-services'
    
    
    // Add the Firebase Crashlytics plugin.
    apply plugin: 'com.google.firebase.crashlytics'
    
    dependencies {
        // Add the Firebase Crashlytics SDK.
        implementation 'com.google.firebase:firebase-crashlytics:17.0.0'
    
        // Recommended: Add the Google Analytics SDK.
        implementation 'com.google.firebase:firebase-analytics:17.4.1'
    }
    
    FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
    // To log a message to a crash report, use the following syntax:
    crashlytics.log("E/TAG: my message");
    
    throw RuntimeException("Test Crash")