标签: crashlytics-android

Fabric Beta和APK拆分

我基于ABI而不是密度分割我的应用程序,如下所示:

    splits {
       abi {
           enable true
           reset()
           include 'x86', 'armeabi', 'armeabi-v7a', 'mips', 'arm64-v8a'
           universalApk true
       }
    }
Run Code Online (Sandbox Code Playgroud)

我有多种口味和2种构建类型(调试和发布).我想把通用的apk文件放在面料测试版上,该文件包含适用于所有平台的原生库.据我所知,这是通过ext.betaDistributionApkFilePath属性支持的.

我可以在buildType级别或者在flavor级别定义它.问题是我需要构建类型和风格来获取我的变体 - 这样的事情:

android.applicationVariants.all { variant ->
   variant.ext.betaDistributionApkFilePath = "${buildDir}/outputs/apk/app-${variant.productFlavors[0].name}-universal-${variant.buildType.name}.apk"
}
Run Code Online (Sandbox Code Playgroud)

要么

gradle.taskGraph.beforeTask { Task task ->
if(task.name ==~ /crashlyticsUploadDistribution.*/) {
   System.out.println("task name: ${task.name}");
   android.applicationVariants.all { variant ->
       System.out.println("match: crashlyticsUploadDistribution${variant.name}");
       if(task.name ==~ /(?i)crashlyticsUploadDistribution${variant.name}/){
           ext.betaDistributionApkFilePath = "${buildDir}/outputs/apk/app-${variant.productFlavors[0].name}-universal-${variant.buildType.name}.apk"
           System.out.println(ext.betaDistributionApkFilePath);
       }
   }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,这似乎不起作用 - 目前有没有办法做到这一点?

android crashlytics android-gradle-plugin crashlytics-beta crashlytics-android

7
推荐指数
1
解决办法
2220
查看次数

Fabric(crashlytics)插件在android studio中不起作用

我无法在Android工作室添加面料.现在我有android studio v1.5.1.我已经尝试从android studio,插件部分安装"fabric"插件,并尝试下载安装良好的crashlytics插件,但是当我登录它时更新到Fabric,然后再次禁用.问题是我无法点击插件/插件,我猜它由于某种原因没有被初始化.有没有人用这个插件经历过这样的行为,有谁知道我该如何解决这个问题?

以下是该插件的外观:

在此输入图像描述

谢谢

android crashlytics android-studio twitter-fabric crashlytics-android

7
推荐指数
0
解决办法
718
查看次数

AAPT2链接Crashlytics失败

已更新至Android studio 3,现在出现以下错误

错误:/app/build/intermediates/res/merged/debug/values/com_crashlytics_build_id.xml作为参数传递的未编译的XML文件.必须先编译成.flat文件.

错误:java.util.concurrent.ExecutionException:com.android.builder.internal.aapt.AaptException:AAPT2链接失败:

java android crashlytics android-studio crashlytics-android

7
推荐指数
1
解决办法
2177
查看次数

Fabric Crashlytics 报告显示一些字母而不是我的 Android 应用程序的类名称

在 Fabric Crashlytics 报告中,我看到一些字母而不是类名称。例如,当我看到“MainActivity”时,我知道MainActivity.java 中发生了崩溃,但现在我看到字母“a”“e”“w”而不是类名,我无法理解崩溃的类发生了!

我的 crashlytics 报告的图片

我怎么解决这个问题?

android crash-reports crashlytics crashlytics-android google-fabric

7
推荐指数
1
解决办法
1093
查看次数

Crashlytics NDK 2.0.1不记录本机崩溃

我正在尝试迁移Crashlytics 2.6.7 -> 2.8.0和Crashlytics NDK1.1.6 -> 2.0.1

但我遇到的问题是,每次我的应用程序在本机崩溃后重新启动时,Crashlytics会向logcat写入如下内容:

12-18 19:48:33.499 11678-11717 /?W/CrashlyticsCore:目录中没有找到minidump数据/data/data/com.example.app/files/.Fabric/com.crashlytics.sdk.android.crashlytics-ndk/native/1513601249792

我没有在仪表板中看到有关崩溃的任何信息.同时,Java崩溃成功记录并显示在仪表板中.

我的build.gradle:

apply plugin: 'io.fabric'

crashlytics {
    enableNdk true
}

dependencies {
    compile('com.crashlytics.sdk.android:crashlytics:2.8.0@aar') {
        transitive = true;
    }

    compile('com.crashlytics.sdk.android:crashlytics-ndk:2.0.1@aar') {
        transitive = true
    }
}
Run Code Online (Sandbox Code Playgroud)

我用于测试的C++代码(应该抛出SIGSEGV):

if(_stream)
    {
        delete _stream;
        _stream->close();
        _stream=NULL;
    }
Run Code Online (Sandbox Code Playgroud)

我需要改变什么来使它工作?

android android-ndk crashlytics crashlytics-android

7
推荐指数
0
解决办法
1202
查看次数

CrashlyticsInitProvider 跳过初始化

我目前正在将应用程序从 Fabric 迁移到 Firebase Crashlytics,在更新了官方文档中所述的所有不同库后,我收到一条日志消息,指出 Crashlytic 初始化已被跳过:

09-12 10:13:40.120 19176-19176/com.random.migratedApp I/CrashlyticsInitProvider: CrashlyticsInitProvider skipping initialization
Run Code Online (Sandbox Code Playgroud)

并且该应用程序无法连接到 Firebase 控制台。

在与代码搏斗了几个小时后,我决定从头开始制作一个快速应用程序,以查看我的系统或库是否存在问题,但一切正常,获得正确的初始化并能够看到 Firebase 中的崩溃安慰。

09-12 10:11:31.852 18414-18414/com.test.appFromScratch I/CrashlyticsCore: Initializing Crashlytics Core 2.7.0.33
09-12 10:11:31.897 18414-18414/com.test.appFromScratch I/CrashlyticsInitProvider: CrashlyticsInitProvider initialization successful
Run Code Online (Sandbox Code Playgroud)

我想知道我是否可能与可能阻止 Crashlytics 成功初始化的依赖项之一不兼容,但我无法弄清楚这里可能存在什么问题。在这里您可以看到我的应用程序依赖项列表:

ext {
     playServicesLibrary = '17.0.0'
     glideLibrary = '4.8.0'
     androidXDependencies = [
        androidXAnnotation: "androidx.annotation:annotation:1.0.0",
        constraintLayout  : 'androidx.constraintlayout:constraintlayout:1.1.2',
        vectorDrawable    : "androidx.vectordrawable:vectordrawable:1.0.0",
        recyclerView      : "androidx.recyclerview:recyclerview:1.0.0",
        roomRuntime       : 'androidx.room:room-runtime:2.1.0-rc01',
        androidXV13       : "androidx.legacy:legacy-support-v13:1.0.0",
        preference        : "androidx.preference:preference:1.1.0-alpha04",
        customtabs        : "androidx.browser:browser:1.0.0",
        appCompat         : "androidx.appcompat:appcompat:1.0.0",
        cardView          : "androidx.cardview:cardview:1.0.0", …
Run Code Online (Sandbox Code Playgroud)

android firebase crashlytics crashlytics-android gradle-dependencies

7
推荐指数
1
解决办法
1573
查看次数

Firebase Crashlytics 控制台不再显示新版本或旧版本的崩溃

我遇到了 firebase Crashlytics 的问题,其中没有出现崩溃,但无崩溃率百分比是。

问题

有一天,在看似随机的一天,Firebase Crashlytics 控制台上停止显示所有 Crashlytic 日志。然而,无碰撞率百分比确实出现在那里。我假设他们确实得到了一些数据,因为为了计算这个无崩溃百分比,他们需要崩溃日志数据(也许不是,idk)。

要添加到这一点,旧的构建哪里崩溃使用中可以看出,也停止显示在火力地堡Crashlytics控制台的崩溃日志。在这一点上,我确信这可能不是我们这边的配置问题,如果它是旧版本不应该受到影响。

也没有错误日志,告诉我们出现了问题。

我试过的

  • 检查我们是否更改了与 firebase crashlytics 相关的任何内容(除了更新到最新版本)
  • 更新到最新的 Firebase Crashlytics 版本(多次)
  • 我试过将 google-services.json 文件与我们项目中的文件进行比较,结果是一样的。
  • 联系 firebase 团队,已经处理了几个星期,但仍然无法解决,我发送了日志、代码片段以及他们要求的所有内容。但仍然没有解决办法。
  • 确保我们不再引用旧的 crashlytics/fabric 插件/实现。

项目信息:

  - Kotlin version: 1.4.10
  - Gradle plugin version: 4.0.2
  - firebase-crashlytics-gradle version: 2.3.0
  - Firebase Crashlytics version: 17.2.2
Run Code Online (Sandbox Code Playgroud)

现有的 Crashlytics 配置:

项目级 build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {

    repositories {
        google()
        jcenter()
        maven { url 'https://plugins.gradle.org/m2/' …
Run Code Online (Sandbox Code Playgroud)

android firebase crashlytics crashlytics-android

7
推荐指数
1
解决办法
401
查看次数

如何解决崩溃:Dns.java okhttp3.Dns$1.lookup?

最近我开始收到这样的崩溃。没有更新任何东西来添加吊带。有谁知道什么会导致这个问题?谢谢。

com.squareup.retrofit2:改造:

改造版本 = "2.6.1"; 改造转换器GsonVersion = "2.6.1"; 改造适配器RxJava2版本=“2.6.1”

    Dns.java line 39
okhttp3.Dns$1.lookup

Fatal Exception: io.reactivex.exceptions.UndeliverableException
com.companyname.data.service.retrofit.exception.RetrofitException: Unable to resolve host "api.companyserver.com": No address associated with hostname
io.reactivex.plugins.RxJavaPlugins.onError (RxJavaPlugins.java:349)
io.reactivex.internal.operators.observable.ObservablePublish$PublishObserver.onError (ObservablePublish.java:187)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.checkTerminated (ObservableObserveOn.java:276)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal (ObservableObserveOn.java:172)
io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run (ObservableObserveOn.java:252)
io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run (HandlerScheduler.java:109)


Caused by com.companyname.data.service.retrofit.exception.RetrofitException
Unable to resolve host "api.companyserver.com": No address associated with hostname
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper.asRetrofitException (RxErrorHandlingCallAdapterFactory.java:75)
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper.access$000 (RxErrorHandlingCallAdapterFactory.java:41)
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper$1.apply (RxErrorHandlingCallAdapterFactory.java:62)
com.lampa.letyshops.data.service.retrofit.adapter.RxErrorHandlingCallAdapterFactory$Rx2CallAdapterWrapper$1.apply (RxErrorHandlingCallAdapterFactory.java:59)
io.reactivex.internal.operators.observable.ObservableOnErrorNext$OnErrorNextObserver.onError (ObservableOnErrorNext.java:91)
retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onError (BodyObservable.java:72)
retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual (CallExecuteObservable.java:55)
io.reactivex.Observable.subscribe (Observable.java:10955)
retrofit2.adapter.rxjava2.BodyObservable.subscribeActual (BodyObservable.java:34)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableOnErrorNext.subscribeActual (ObservableOnErrorNext.java:38)
io.reactivex.Observable.subscribe (Observable.java:10955)
io.reactivex.internal.operators.observable.ObservableMap.subscribeActual (ObservableMap.java:33)
io.reactivex.Observable.subscribe (Observable.java:10955) …
Run Code Online (Sandbox Code Playgroud)

android crash-reports crashlytics-android retrofit2

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

没有 Google Play 服务的 Firebase Crashlytics

即使没有 Google Play 服务 (GPS),Firebase Crashlytics 也能工作吗?如果是这样,有 GPS 和没有 GPS 的设备在报告方面有什么区别?

firebase crashlytics crashlytics-android

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

Crashlytics NDK:自更新到新 sdk 后没有崩溃符号

它运行良好,直到我们更新到新的 SDK,现在它只显示报告上的最后一个 java 堆栈帧。任务 uploadCrashlyticsSymbolFileFlavorDebug 在 externalNativeBuildFlavorDebug 之后立即被调用,但报告上没有符号。我尝试在构建后通过 cli 运行它,但仍然没有运气。我没有想法,找不到我哪里出错了

项目级 build.gradle

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.2'
        classpath 'com.google.gms:google-services:4.3.3'
        classpath 'com.google.firebase:perf-plugin:1.3.1'
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.0.0-beta02'
    }
}
Run Code Online (Sandbox Code Playgroud)

应用级 build.gradle

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
apply plugin: 'com.google.firebase.firebase-perf'

android {
    buildTypes {
      release {
         debuggable false
         firebaseCrashlytics {
             nativeSymbolUploadEnabled true
         }
      }
      debug {
         debuggable true
         firebaseCrashlytics {
             nativeSymbolUploadEnabled true
         }
      }
    }
  }

dependencies {
    implementation 'com.google.firebase:firebase-analytics:17.2.3'
    implementation 'com.google.firebase:firebase-crashlytics:17.0.0-beta01'
    implementation 'com.google.firebase:firebase-crashlytics-ndk:17.0.0-beta01'
} …
Run Code Online (Sandbox Code Playgroud)

android android-ndk crashlytics ndk-build crashlytics-android

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