firebase / firebase-android-sdk

Firebase Android SDK
https://firebase.google.com
Apache License 2.0
2.28k stars 579 forks source link

Firebase crashlytics not able to read crash reports. (Reopened) #1711

Closed UdjinNNN closed 2 years ago

UdjinNNN commented 4 years ago

[READ] Step 1: Are you in the right place?

Issues filed here should be about bugs in the code in this repository. If you have a general question, need help debugging, or fall into some other category use one of these other channels:

[REQUIRED] Step 2: Describe your environment

[REQUIRED] Step 3: Describe the problem

This issue has been already discussed here: #1559 I work on this exact project, too. Unfortunately an updating of Crashlytics to 17.1.0 doesn't solve our problem.

Steps to reproduce:

--------- beginning of main
--------- beginning of system
06-24 13:48:45.524 13846 13846 D FirebaseCrashlytics: Firebase Analytics is available.
06-24 13:48:45.532 13846 13846 D FirebaseCrashlytics: Firebase Analytics listener registered successfully.
06-24 13:48:45.585 13846 13846 D FirebaseCrashlytics: Reading cached settings...
06-24 13:48:45.591 13846 13846 D FirebaseCrashlytics: No cached settings found.
06-24 13:48:45.591 13846 13846 D FirebaseCrashlytics: No cached settings data found.
06-24 13:48:45.591 13846 13846 D FirebaseCrashlytics: Reading cached settings...
06-24 13:48:45.592 13846 13846 D FirebaseCrashlytics: No cached settings found.
06-24 13:48:45.592 13846 13846 D FirebaseCrashlytics: No cached settings data found.
06-24 13:48:45.598 13846 13846 D FirebaseCrashlytics: Mapping file ID is: 00000000000000000000000000000000
06-24 13:48:45.599 13846 13846 I FirebaseCrashlytics: Initializing Crashlytics 17.1.0
06-24 13:48:45.601 13846 13846 D FirebaseCrashlytics: Installer package name is: null
06-24 13:48:45.701 13846 13846 D FirebaseCrashlytics: Exception handling initialization successful
06-24 13:48:45.759 13846 14187 D FirebaseCrashlytics: Created new Crashlytics IID: 7b65b42aad28469381da761e64e57e35
06-24 13:48:45.760 13846 14187 D FirebaseCrashlytics: Opening a new session with ID 5EF32F8D02BD-0001-3616-C922BEA85160
06-24 13:48:45.819 13846 14187 D FirebaseCrashlytics: Initialization marker file created.
06-24 13:48:45.820 13846 14187 D FirebaseCrashlytics: Registered Firebase Analytics event receiver for breadcrumbs
06-24 13:48:45.820 13846 14187 D FirebaseCrashlytics: Finalizing previously open sessions.
06-24 13:48:45.822 13846 14187 D FirebaseCrashlytics: No open sessions to be closed.
06-24 13:48:45.822 13846 14187 D FirebaseCrashlytics: Closed all previously open sessions
06-24 13:48:45.823 13846 14187 D FirebaseCrashlytics: No reports are available.
06-24 13:48:45.824 13846 14187 D FirebaseCrashlytics: Initialization marker file removed: true
06-24 13:48:47.201 13846 14218 D FirebaseCrashlytics: Requesting settings from https://firebase-settings.crashlytics.com/spi/v2/platforms/android/gmp/1:580326590415:android:1154727c0cc42e34/settings
06-24 13:48:47.201 13846 14218 D FirebaseCrashlytics: Settings query params were: {instance=8a346df2d411511704ced7e4265e806526a142b3, build_version=4053, display_version=1.18.9, source=1}
06-24 13:48:47.596 13846 14189 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _sc=LoginActivity, _si=7079824460424181625}], name=_vs, timestampInMillis=1592995727515}]
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics: Could not open log file: /data/user/0/com.freshbooks.andromeda.debug/files/.com.google.firebase.crashlytics/log-files/crashlytics-userlog-5EF32F8D02BD-0001-3616-C922BEA85160.temp
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics: java.io.FileNotFoundException: /data/user/0/com.freshbooks.andromeda.debug/files/.com.google.firebase.crashlytics/log-files/crashlytics-userlog-5EF32F8D02BD-0001-3616-C922BEA85160.temp.tmp: open failed: ENOENT (
No such file or directory)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at libcore.io.IoBridge.open(IoBridge.java:496)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at java.io.RandomAccessFile.<init>(RandomAccessFile.java:289)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFile.open(QueueFile.java:221)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFile.initialize(QueueFile.java:202)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFile.<init>(QueueFile.java:117)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.openLogFile(QueueFileLogStore.java:128)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.writeToLog(QueueFileLogStore.java:52)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.LogFileManager.writeToLog(LogFileManager.java:85)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:636)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:632)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:106)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.android.gms.tasks.zzd.run(Unknown Source:5)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:60)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at java.lang.Thread.run(Thread.java:919)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics: Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at libcore.io.Linux.open(Native Method)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at libcore.io.BlockGuardOs.open(BlockGuardOs.java:252)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:8002)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   at libcore.io.IoBridge.open(IoBridge.java:482)
06-24 13:48:47.613 13846 14187 E FirebaseCrashlytics:   ... 16 more
06-24 13:48:47.672 13846 14189 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=app, _sc=LoginActivity, _si=7079824460424181625, timestamp=2020-06-24 10:48:47, content_type=SyncRefactoredBuild}], name=welcome, timestampInMillis=1592995
727433}]
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics: Could not open log file: /data/user/0/com.freshbooks.andromeda.debug/files/.com.google.firebase.crashlytics/log-files/crashlytics-userlog-5EF32F8D02BD-0001-3616-C922BEA85160.temp
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics: java.io.FileNotFoundException: /data/user/0/com.freshbooks.andromeda.debug/files/.com.google.firebase.crashlytics/log-files/crashlytics-userlog-5EF32F8D02BD-0001-3616-C922BEA85160.temp.tmp: open failed: ENOENT (
No such file or directory)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at libcore.io.IoBridge.open(IoBridge.java:496)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at java.io.RandomAccessFile.<init>(RandomAccessFile.java:289)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFile.open(QueueFile.java:221)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFile.initialize(QueueFile.java:202)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFile.<init>(QueueFile.java:117)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.openLogFile(QueueFileLogStore.java:128)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.writeToLog(QueueFileLogStore.java:52)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.log.LogFileManager.writeToLog(LogFileManager.java:85)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:636)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:632)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:106)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.android.gms.tasks.zzd.run(Unknown Source:5)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:60)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at java.lang.Thread.run(Thread.java:919)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics: Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at libcore.io.Linux.open(Native Method)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at libcore.io.BlockGuardOs.open(BlockGuardOs.java:252)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:8002)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   at libcore.io.IoBridge.open(IoBridge.java:482)
06-24 13:48:47.676 13846 14187 E FirebaseCrashlytics:   ... 16 more
06-24 13:48:47.789 13846 14218 D FirebaseCrashlytics: Settings request ID: null
06-24 13:48:47.789 13846 14218 D FirebaseCrashlytics: Settings result was: 200
06-24 13:48:47.791 13846 14218 D FirebaseCrashlytics: Writing settings to cache file...
06-24 13:48:47.794 13846 14218 D FirebaseCrashlytics: Loaded settings: {"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_c
rashlytics_enabled":false},"app":{"status":"activated","update_required":false,"report_upload_variant":1,"native_report_upload_variant":2},"fabric":{"org_id":"5ebc1bdfbc0faa762c000003","bundle_id":"com.freshbooks.andromeda.debug"},"expires_at":1593082127791}

During an investigation of this issue we found that project used Crashlytics from Fabric. But this lib has been removed since Oct 2017. I've tried to enable crashlytics collection with: FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true) and had no success. Also tried to use Fabric Crashlytics integration.

With initialisation:

val crashlytics = Crashlytics.Builder()
        .core(CrashlyticsCore.Builder().disabled(false).build())
        .build()
Fabric.with(this, crashlytics)

And manifest:

<meta-data
            android:name="firebase_crashlytics_collection_enabled"
            android:value="true" />

Had no luck. Got this:

D/CrashlyticsCore: Crashlytics is handling uncaught exception "java.lang.ArrayIndexOutOfBoundsException: length=2; index=10" from thread main
D/CrashlyticsCore: No log data to include with this event.
D/CrashlyticsCore: Closing open sessions.
D/CrashlyticsCore: Closing session: 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Collecting session parts for ID 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Session 5EF21C7400FD-0001-0AFA-1576EEFD14FC has fatal exception: true
D/CrashlyticsCore: Session 5EF21C7400FD-0001-0AFA-1576EEFD14FC has non-fatal exceptions: false
D/CrashlyticsCore: Collecting SessionStart data for session ID 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Collecting SessionUser data for session ID 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Collecting SessionApp data for session ID 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Collecting SessionOS data for session ID 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Collecting SessionDevice data for session ID 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Removing session part files for ID 5EF21C7400FD-0001-0AFA-1576EEFD14FC
D/CrashlyticsCore: Opening a new session with ID 5EF21CD502E8-0002-0AFA-1576EEFD14FC
D/CrashlyticsCore: Crashlytics completed exception processing. Invoking default exception handler.
D/CrashlyticsCore: Attempting to send crash report at time of crash...
I/FirebaseInitProvider: FirebaseApp initialization successful
I/CrashlyticsInitProvider: CrashlyticsInitProvider skipping initialization
D/Fabric: Build ID is: 55269ff8-e7ff-49af-888a-64f6646833be
I/CrashlyticsCore: Initializing Crashlytics Core 2.7.0.33
D/Fabric: Using AdvertisingInfo from Preference Store
D/Fabric: Build ID is: 55269ff8-e7ff-49af-888a-64f6646833be
D/Fabric: Build ID is: 55269ff8-e7ff-49af-888a-64f6646833be
D/CrashlyticsCore: Found previous crash marker.
D/CrashlyticsCore: Exception handling initialization successful
D/Fabric: Initializing io.fabric.sdk.android:fabric [Version: 1.4.8.32], with the following kits:
    com.crashlytics.sdk.android:crashlytics [Version: 2.10.1.34]
    com.crashlytics.sdk.android:answers [Version: 1.4.7.32]
    com.crashlytics.sdk.android:beta [Version: 1.2.10.27]
    com.crashlytics.sdk.android.crashlytics-core [Version: 2.7.0.33]
D/Fabric: Build ID is: 55269ff8-e7ff-49af-888a-64f6646833be
D/Fabric: Reading cached settings...
D/CrashlyticsCore: Opening a new session with ID 5EF21CF3017D-0001-1892-1576EEFD14FC
D/Fabric: Loaded cached settings: {"settings_version":2,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":false,"collect_analytics":false,"prompt_enabled":false,"push_enabled":true,"firebase_crashlytics_enabled":false},"analytics":{"url":"https:\/\/e.crashlytics.com\/spi\/v2\/events","flush_interval_secs":600,"max_file_count_per_send":1,"track_custom_events":true,"track_predefined_events":true,"track_view_controllers":false,"flush_on_background":true,"max_byte_size_per_file":8000,"max_pending_send_file_count":100,"sampling_rate":1,"forward_to_google_analytics":false,"include_purchase_events_in_forwarded_events":false},"beta":{"update_suspend_duration":1209600,"update_endpoint":"https:\/\/api.crashlytics.com\/spi\/v2\/platforms\/android\/apps\/com.freshbooks.andromeda.debug\/beta_update_check"},"app":{"identifier":"com.freshbooks.andromeda.debug","status":"invalid","url":"https:\/\/api.crashlytics.com\/spi\/v1\/platforms\/android\/apps","reports_url":"https:\/\/reports.crashlytics.com\/spi\/v1\/platforms\/android\/apps\/com.freshbooks.andromeda.debug\/reports","ndk_reports_url":"https:\/\/reports.crashlytics.com\/sdk-api\/v1\/platforms\/android\/apps\/com.freshbooks.andromeda.debug\/minidumps","update_required":false},"session":{"log_buffer_size":64000,"max_chained_exception_depth":16,"max_complete_sessions_count":4,"max_custom_exception_events":8,"max_custom_key_value_pairs":64,"identifier_mask":255},"prompt":{"title":"Send Crash Report?","message":"Looks like we crashed! Please help us fix the prob...","send_button_title":"Send","show_cancel_button":true,"cancel_button_title":"Don't Send","show_always_send_button":true,"always_send_button_title":"Always Send"},"expires_at":1593011702384}
D/Fabric: Returning cached settings.
D/CrashlyticsCore: Initialization marker file created.
D/CrashlyticsCore: Collection of crash reports disabled in Crashlytics settings.
D/CrashlyticsCore: Initialization marker file removed: true
D/Fabric: Using AdvertisingInfo from Reflection Provider
moetouban commented 4 years ago

@mrwillis21 ^

mrwillis21 commented 4 years ago

@UdjinNNN and @moetouban thanks very much for reopening this as a fresh issue, to separate it from the fix in 17.1.0. Can you give me more info on how exactly you're including FirebaseCrashlytics in your app? Is it directly in your app project, or included some other way? Can you give me an idea of how your build.gradle(s) are structured?

UdjinNNN commented 4 years ago

@UdjinNNN and @moetouban thanks very much for reopening this as a fresh issue, to separate it from the fix in 17.1.0. Can you give me more info on how exactly you're including FirebaseCrashlytics in your app? Is it directly in your app project, or included some other way? Can you give me an idea of how your build.gradle(s) are structured?

@mrwillis21 We're including FirebaseCrashlytics directly in our project according to the official documentation.

Our project consists from two modules.

Here is our project-level build.gradle

buildscript {
    ext.kotlin_version = '1.3.72'

    repositories {
        google()
        jcenter()
        maven { url "https://plugins.gradle.org/m2/" }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:4.0.0'
        classpath 'com.google.gms:google-services:4.3.3'
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven { url "https://jitpack.io" }
        maven { url "https://maven.google.com" }
        maven { url "https://oss.sonatype.org/content/repositories/snapshots" }
    }

    afterEvaluate {
        extensions.findByName('kapt')?.arguments {
            arg("dagger.formatGeneratedSource", "disabled")
            arg("dagger.gradle.incremental", "enabled")
        }
    }

    tasks.withType(JavaCompile) {
        configure(options) {
            incremental = true
        }
    }
}

ext {
    compileSdkVersion = 30
    minSdkVersion = 17
    supportLibVersion = '1.1.0'
    buildToolVersion = "30.0.0"
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

And main app-level build.gradle:

import java.text.SimpleDateFormat

repositories {
    mavenCentral()
}

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'com.google.firebase.crashlytics'

project.ext.versionPropsFile = ...

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolVersion
    testBuildType "debugTesting"

    if (project.versionPropsFile.canRead()) {
        Properties versionProps = new Properties()

        versionProps.load(new FileInputStream(project.versionPropsFile))

        project.ext.appVersionName = versionProps['VERSION_NAME'] + "." + versionProps['VERSION_BUILD']
        project.ext.appVersionCode = versionProps['VERSION_CODE'].toInteger()

        defaultConfig {
            applicationId "com.freshbooks.andromeda"
            targetSdkVersion rootProject.ext.compileSdkVersion
            minSdkVersion rootProject.ext.minSdkVersion
            versionCode appVersionCode
            versionName appVersionName
            testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
            multiDexEnabled true

            buildConfigField "String", "BUILD_TYPE_RELEASE", "\"release\""
            buildConfigField "String", "BUILD_TYPE_DEBUG", "\"debug\""

            vectorDrawables.useSupportLibrary = true

            manifestPlaceholders = [
                    'appAuthRedirectScheme': '...'
            ]
        }
    } else {
        throw new GradleException("Could not read ...!")
    }

//create release signingConfigs
    def signingFilePath = ...
    def performSigning = file(signingFilePath).exists()
    if (performSigning) {
        apply from: signingFilePath

        signingConfigs {
            release {
                storeFile file(project.signing.storeFilePath)
                storePassword project.signing.storePassword
                keyAlias project.signing.keyAlias
                keyPassword project.signing.keyPassword
                v1SigningEnabled true
                v2SigningEnabled true
            }
        }
    }

    buildTypes {
        release {
            debuggable false
            if (performSigning) {
                signingConfig signingConfigs.release
            }
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }

        debug {
            minifyEnabled false
            testCoverageEnabled false
            applicationIdSuffix '.debug'
            debuggable true
        }

        debugTesting.initWith(debug)
        debugTesting {
            testCoverageEnabled true
        }
    }

//Lint configuration
    lintOptions {
        abortOnError true
        ignoreWarnings false
        xmlReport false
        disable 'MissingTranslation'
    }

    dexOptions {
        jumboMode true
        javaMaxHeapSize "2048M"
    }

//Exclude conflicting libraries
    configurations {
        all {
            exclude module: 'httpclient'
            exclude module: 'commons-logging'
        }
    }

//Set test options for successful test passing with CI
    testOptions {
        animationsDisabled true

        unitTests.returnDefaultValues = true
        unitTests.includeAndroidResources = true
        unitTests.all {
            // set heap size for the test JVM(s)
            minHeapSize = "128m"
            maxHeapSize = "512m"

            maxParallelForks = 1

            //noinspection GrDeprecatedAPIUsage
            jacoco {
                includeNoLocationClasses = true
            }
        }
    }

//Rename apk
    applicationVariants.all { variant ->
        variant.outputs.all {
            outputFileName = "freshbooks-${variant.name}-${variant.versionName}(${variant.versionCode}).apk"
        }
    }
}

....Some tasks here

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"

    debugImplementation project(':second_module')
    releaseImplementation project(':second_module')
    debugTestingImplementation project(':second_module')

    implementation 'androidx.multidex:multidex:2.0.1'
    //debugCompile 'com.facebook.stetho:stetho:1.5.0'

    implementation "androidx.appcompat:appcompat:${rootProject.ext.supportLibVersion}"

    def androidXcommon = '1.0.0'
    implementation "androidx.legacy:legacy-support-v4:${androidXcommon}"
    implementation "androidx.recyclerview:recyclerview:1.1.0"
    implementation "com.google.android.material:material:1.1.0"
    implementation "androidx.percentlayout:percentlayout:${androidXcommon}"
    implementation "androidx.browser:browser:1.2.0"
    implementation "androidx.cardview:cardview:${androidXcommon}"
    implementation "androidx.preference:preference:1.1.1"
    implementation "androidx.legacy:legacy-preference-v14:${androidXcommon}"
    implementation 'androidx.exifinterface:exifinterface:1.2.0'

    implementation 'com.google.android.gms:play-services-auth:18.0.0'

    implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
    implementation 'com.makeramen:roundedimageview:2.3.0'
    implementation 'net.opacapp:multiline-collapsingtoolbar:1.2.0'

    def glideVersion = '4.11.0'
    implementation("com.github.bumptech.glide:glide:${glideVersion}") {
        exclude group: 'com.google.code.gson', module: 'gson'
    }
    kapt "com.github.bumptech.glide:compiler:${glideVersion}"

    implementation 'com.google.code.gson:gson:2.8.6'

    implementation 'com.miguelcatalan:materialsearchview:1.4.0'
    implementation 'com.wdullaer:materialdatetimepicker:2.3.0'
    implementation 'com.afollestad.material-dialogs:core:0.8.5.9'
    implementation 'com.aurelhubert:ahbottomnavigation:1.2.3'

    implementation 'joda-time:joda-time:2.10.6'

    implementation 'me.leolin:ShortcutBadger:1.1.22@aar'
    implementation 'jp.wasabeef:richeditor-android:1.2.2'
    implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'

    implementation 'me.relex:circleindicator:1.2.2@aar'

    def daggerVersion = '2.28.1'
    implementation "com.google.dagger:dagger:${daggerVersion}"
    kapt "com.google.dagger:dagger-compiler:${daggerVersion}"
    kaptTest "com.google.dagger:dagger-compiler:${daggerVersion}"
    kaptAndroidTest "com.google.dagger:dagger-compiler:${daggerVersion}"

    def coroutinesVersion = '1.3.7'
    implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:${coroutinesVersion}"
    implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:${coroutinesVersion}"

    def retrofitVersion = '2.9.0'
    implementation "com.squareup.retrofit2:retrofit:${retrofitVersion}"

    def paging_version = "2.1.2"
    implementation "androidx.paging:paging-runtime-ktx:$paging_version"

    implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'

    debugImplementation 'com.amitshekhar.android:debug-db:1.0.6'

    implementation 'com.brandongogetap:stickyheaders:0.6.0'

    implementation 'com.google.firebase:firebase-analytics:17.4.3'

    implementation 'com.google.firebase:firebase-crashlytics:17.1.0'
    implementation 'com.google.firebase:firebase-perf:19.0.7'

    implementation 'net.openid:appauth:0.7.1'

    //Unit tests dependencies
    testImplementation 'androidx.test:core:1.2.0'
    testImplementation 'junit:junit:4.13-beta-3'
    testImplementation 'org.mockito:mockito-core:2.27.0'
    testImplementation 'org.hamcrest:hamcrest-all:1.3'

    testImplementation 'org.robolectric:robolectric:4.3-beta-1'
    testImplementation 'org.robolectric:shadows-support-v4:3.4-rc2'
    testImplementation 'org.robolectric:shadows-multidex:4.3.1'
    testImplementation 'org.easytesting:fest-reflect:1.4.1'

    def powerMockitoVersion = '2.0.2'
    testImplementation "org.powermock:powermock-module-junit4:${powerMockitoVersion}"
    testImplementation "org.powermock:powermock-module-junit4-rule:${powerMockitoVersion}"
    testImplementation "org.powermock:powermock-api-mockito2:${powerMockitoVersion}"
    testImplementation "org.powermock:powermock-classloading-xstream:${powerMockitoVersion}"

    //Android tests dependencies
    def testRunnerVersion = '1.1.1'
    androidTestImplementation 'androidx.test:runner:1.3.0-alpha02'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2-alpha02'
    androidTestImplementation 'androidx.test:rules:1.3.0-alpha02'

    def espressoVersion = '3.3.0-alpha02'
    androidTestImplementation "androidx.test.espresso:espresso-core:${espressoVersion}"
    androidTestImplementation "androidx.test.espresso:espresso-contrib:${espressoVersion}"
    androidTestImplementation "androidx.test.espresso:espresso-intents:${espressoVersion}"
    androidTestImplementation "com.google.dagger:dagger:${daggerVersion}"

    androidTestImplementation 'androidx.test.ext:junit:1.1.2-alpha02'
//    androidTestImplementation 'androidx.fragment:fragment-testing:1.1.0-alpha05'

}

apply plugin: 'com.google.gms.google-services'

This is a log that we receive immediately after crash. So the issue heppens no only reading but on writing, too.

D/FirebaseCrashlytics: Crashlytics is handling uncaught exception "java.lang.RuntimeException: Test Crash" from thread main
D/FirebaseCrashlytics: No log data to include with this event.
D/FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=app, _sc=LoginActivity, _si=-7381158708041738862, timestamp=2020-06-25 11:30:16, content_type=SyncRefactoredBuild}], name=Login_button_clicked_event, timestampInMillis=1593084616942}]
D/FirebaseCrashlytics: Could not persist event for session 5EF48A8D03980001781E3FC4D67F7156
    java.io.FileNotFoundException: /data/user/0/com.freshbooks.andromeda.debug/files/.com.google.firebase.crashlytics/report-persistence/sessions/5EF48A8D03980001781E3FC4D67F7156/event0000000000_: open failed: ENOENT (No such file or directory)
        at libcore.io.IoBridge.open(IoBridge.java:496)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:235)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:186)
        at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.writeTextFile(CrashlyticsReportPersistence.java:464)
        at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.persistEvent(CrashlyticsReportPersistence.java:152)
        at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistEvent(SessionReportingCoordinator.java:253)
        at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistFatalEvent(SessionReportingCoordinator.java:122)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(CrashlyticsController.java:395)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(CrashlyticsController.java:388)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:106)
        at com.google.android.gms.tasks.zzf.run(Unknown Source:2)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:60)
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
        at java.lang.Thread.run(Thread.java:919)
     Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
        at libcore.io.Linux.open(Native Method)
        at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
        at libcore.io.BlockGuardOs.open(BlockGuardOs.java:252)
        at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
        at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:8002)
        at libcore.io.IoBridge.open(IoBridge.java:482)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:235) 
        at java.io.FileOutputStream.<init>(FileOutputStream.java:186) 
        at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.writeTextFile(CrashlyticsReportPersistence.java:464) 
        at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.persistEvent(CrashlyticsReportPersistence.java:152) 
        at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistEvent(SessionReportingCoordinator.java:253) 
        at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistFatalEvent(SessionReportingCoordinator.java:122) 
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(CrashlyticsController.java:395) 
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(CrashlyticsController.java:388) 
        at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:106) 
        at com.google.android.gms.tasks.zzf.run(Unknown Source:2) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 
        at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:60) 
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27) 
        at java.lang.Thread.run(Thread.java:919) 
E/FirebaseCrashlytics: Tried to write a fatal exception while no session was open.
D/FirebaseCrashlytics: No open sessions to be closed.
D/FirebaseCrashlytics: Opening a new session with ID 5EF48AC9000F-0002-781E-3FC4D67F7156
D/FirebaseCrashlytics: Send via DataTransport disabled. Removing DataTransport reports.
D/FirebaseCrashlytics: Logging Crashlytics event to Firebase
D/FirebaseCrashlytics: Awaiting app exception callback from FA...
D/FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=clx, _r=1, _et=57919, _sc=LoginActivity, _si=-7381158708041738862, timestamp=1593084616945, fatal=1}], name=_ae, timestampInMillis=1593084617027}]
D/FirebaseCrashlytics: App exception callback received from FA listener.
D/FirebaseCrashlytics: Crashlytics completed exception processing. Invoking default exception handler.
moetouban commented 4 years ago

@mrwillis21 do you have an idea what would be the issue here that logs couldn't be saved in a file?

AANikolaev commented 4 years ago

@mrwillis21 ^

mrwillis21 commented 4 years ago

Hi folks, wanted to just ping this thread - this is definitely a very strange issue, and I'm not yet sure what could be going on here. Is there anything special about how you're initializing Firebase in your app? Also, what kind of device are you seeing this on?

NhatPham94 commented 4 years ago

I also got this issue but not getting FileNotFoundException. I got this on com.google.firebase:firebase-crashlytics:17.1.1, Android 10

Firebase Analytics is available. 2020-07-21 14:42:01.996 D/FirebaseCrashlytics: Firebase Analytics listener registered successfully. 2020-07-21 14:42:02.005 D/FirebaseCrashlytics: Reading cached settings... 2020-07-21 14:42:02.015 D/FirebaseCrashlytics: Loaded cached settings: {"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false},"app":{"status":"activated","update_required":false,"report_upload_variant":1,"native_report_upload_variant":2},"fabric":{"org_id":"55cd92c8409a2b9c720000f3","bundle_id":"com.mingle.justsayhi"},"expires_at":1595391467204} 2020-07-21 14:42:02.015 D/FirebaseCrashlytics: Returning cached settings. 2020-07-21 14:42:02.016 D/FirebaseCrashlytics: Mapping file ID is: 00000000000000000000000000000000 2020-07-21 14:42:02.017 I/FirebaseCrashlytics: Initializing Crashlytics 17.1.1 2020-07-21 14:42:02.018 D/FirebaseCrashlytics: Installer package name is: null 2020-07-21 14:42:02.065 D/FirebaseCrashlytics: Exception handling initialization successful 2020-07-21 14:42:02.074 D/FirebaseCrashlytics: Found matching FID, using Crashlytics IID: eaa7b6c7b89d4f08b7acc7d2002d0206 2020-07-21 14:42:02.075 D/FirebaseCrashlytics: Opening a new session with ID 5F169C4A0041-0001-4130-DBFC1F1C8528 2020-07-21 14:42:02.114 D/FirebaseCrashlytics: Initialization marker file created. 2020-07-21 14:42:02.115 D/FirebaseCrashlytics: Registered Firebase Analytics event receiver for breadcrumbs 2020-07-21 14:42:02.115 D/FirebaseCrashlytics: Finalizing previously open sessions. 2020-07-21 14:42:02.124 D/FirebaseCrashlytics: Closing open sessions. 2020-07-21 14:42:02.124 D/FirebaseCrashlytics: Closing session: 5F169B0400F6-0001-3B7D-DBFC1F1C8528 2020-07-21 14:42:02.124 D/FirebaseCrashlytics: Collecting session parts for ID 5F169B0400F6-0001-3B7D-DBFC1F1C8528 2020-07-21 14:42:02.125 D/FirebaseCrashlytics: Session 5F169B0400F6-0001-3B7D-DBFC1F1C8528 has fatal exception: false 2020-07-21 14:42:02.125 D/FirebaseCrashlytics: Session 5F169B0400F6-0001-3B7D-DBFC1F1C8528 has non-fatal exceptions: false 2020-07-21 14:42:02.125 D/FirebaseCrashlytics: No events present for session ID 5F169B0400F6-0001-3B7D-DBFC1F1C8528 2020-07-21 14:42:02.125 D/FirebaseCrashlytics: Removing session part files for ID 5F169B0400F6-0001-3B7D-DBFC1F1C8528 2020-07-21 14:42:02.127 D/FirebaseCrashlytics: Closed all previously open sessions 2020-07-21 14:42:02.128 D/FirebaseCrashlytics: No reports are available. 2020-07-21 14:42:02.129 D/FirebaseCrashlytics: Initialization marker file removed: true 2020-07-21 14:42:03.745 D/FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _sc=MainActivity, _si=6688440622234185631}], name=_vs, timestampInMillis=1595317323665}] 2020-07-21 14:42:08.717 D/FirebaseCrashlytics: Firebase Analytics is available. 2020-07-21 14:42:08.720 D/FirebaseCrashlytics: Firebase Analytics listener registered successfully. 2020-07-21 14:42:08.730 D/FirebaseCrashlytics: Reading cached settings... 2020-07-21 14:42:08.740 D/FirebaseCrashlytics: Loaded cached settings: {"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false},"app":{"status":"activated","update_required":false,"report_upload_variant":1,"native_report_upload_variant":2},"fabric":{"org_id":"55cd92c8409a2b9c720000f3","bundle_id":"com.mingle.justsayhi"},"expires_at":1595391467204} 2020-07-21 14:42:08.740 D/FirebaseCrashlytics: Returning cached settings. 2020-07-21 14:42:08.741 D/FirebaseCrashlytics: Mapping file ID is: 00000000000000000000000000000000 2020-07-21 14:42:08.741 I/FirebaseCrashlytics: Initializing Crashlytics 17.1.1 2020-07-21 14:42:08.743 D/FirebaseCrashlytics: Installer package name is: null 2020-07-21 14:42:08.784 D/FirebaseCrashlytics: Exception handling initialization successful 2020-07-21 14:42:08.794 D/FirebaseCrashlytics: Found matching FID, using Crashlytics IID: eaa7b6c7b89d4f08b7acc7d2002d0206 2020-07-21 14:42:08.795 D/FirebaseCrashlytics: Opening a new session with ID 5F169C500311-0001-4261-DBFC1F1C8528 2020-07-21 14:42:08.841 D/FirebaseCrashlytics: Initialization marker file created. 2020-07-21 14:42:08.842 D/FirebaseCrashlytics: Registered Firebase Analytics event receiver for breadcrumbs 2020-07-21 14:42:08.842 D/FirebaseCrashlytics: Finalizing previously open sessions. 2020-07-21 14:42:08.850 D/FirebaseCrashlytics: Closing open sessions. 2020-07-21 14:42:08.850 D/FirebaseCrashlytics: Closing session: 5F169C4A0041-0001-4130-DBFC1F1C8528 2020-07-21 14:42:08.850 D/FirebaseCrashlytics: Collecting session parts for ID 5F169C4A0041-0001-4130-DBFC1F1C8528 2020-07-21 14:42:08.852 D/FirebaseCrashlytics: Session 5F169C4A0041-0001-4130-DBFC1F1C8528 has fatal exception: false 2020-07-21 14:42:08.853 D/FirebaseCrashlytics: Session 5F169C4A0041-0001-4130-DBFC1F1C8528 has non-fatal exceptions: false 2020-07-21 14:42:08.853 D/FirebaseCrashlytics: No events present for session ID 5F169C4A0041-0001-4130-DBFC1F1C8528 2020-07-21 14:42:08.853 D/FirebaseCrashlytics: Removing session part files for ID 5F169C4A0041-0001-4130-DBFC1F1C8528 2020-07-21 14:42:08.857 D/FirebaseCrashlytics: Closed all previously open sessions 2020-07-21 14:42:08.858 D/FirebaseCrashlytics: No reports are available. 2020-07-21 14:42:08.861 D/FirebaseCrashlytics: Initialization marker file removed: true

UdjinNNN commented 4 years ago

Hi folks, wanted to just ping this thread - this is definitely a very strange issue, and I'm not yet sure what could be going on here. Is there anything special about how you're initializing Firebase in your app?

Hi @mrwillis21. There is nothing special. Just used Get Started instruction.

Also, what kind of device are you seeing this on?

Samsung Galaxy S9 (SM-G960F) Android 10.

mrwillis21 commented 4 years ago

@UdjinNNN And just to be clear, you're not running a service, or separate processes, or anything in your app?

UdjinNNN commented 4 years ago

@UdjinNNN And just to be clear, you're not running a service, or separate processes, or anything in your app?

@mrwillis21 Only one thing we have is authenticator service that supports our authenticator class extended from AbstractAccountAuthenticator according to the Custom Auth. This service is really simple. We don't expect any issues from it.

asiteandroid commented 4 years ago

I also got this issue. Can't see any crash logs in firebase console. I got this on com.google.firebase:firebase-crashlytics:17.1.0, Android 10

`2020-07-22 16:23:48.150 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Firebase Analytics is available. 2020-07-22 16:23:48.156 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Firebase Analytics listener registered successfully. 2020-07-22 16:23:48.178 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Reading cached settings... 2020-07-22 16:23:48.188 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Loaded cached settings: {"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false},"app":{"status":"activated","update_required":false,"report_upload_variant":1,"native_report_upload_variant":1},"fabric":{"org_id":"559bc30c51b1d4b2de000042","bundle_id":"com.asite.Adoddle"},"expires_at":1595501440012} 2020-07-22 16:23:48.188 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Returning cached settings. 2020-07-22 16:23:48.190 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Mapping file ID is: 00000000000000000000000000000000 2020-07-22 16:23:48.192 783-783/com.asite.Adoddle I/FirebaseCrashlytics: Initializing Crashlytics 17.1.0 2020-07-22 16:23:48.193 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Installer package name is: null 2020-07-22 16:23:48.286 783-783/com.asite.Adoddle D/FirebaseCrashlytics: Exception handling initialization successful 2020-07-22 16:23:48.295 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Found matching FID, using Crashlytics IID: 815ee2bf3fed41bd973c4967d9749e4c 2020-07-22 16:23:48.296 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Opening a new session with ID 5F181ABC0120-0001-030F-1856258E9366 2020-07-22 16:23:48.467 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Initialization marker file created. 2020-07-22 16:23:48.469 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Registered Firebase Analytics event receiver for breadcrumbs 2020-07-22 16:23:48.469 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Finalizing previously open sessions. 2020-07-22 16:23:48.507 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Closing open sessions. 2020-07-22 16:23:48.507 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Closing session: 5F1819D303BA-0001-7F6C-1856258E9366 2020-07-22 16:23:48.508 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Collecting session parts for ID 5F1819D303BA-0001-7F6C-1856258E9366 2020-07-22 16:23:48.508 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Session 5F1819D303BA-0001-7F6C-1856258E9366 has fatal exception: false 2020-07-22 16:23:48.510 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Session 5F1819D303BA-0001-7F6C-1856258E9366 has non-fatal exceptions: false 2020-07-22 16:23:48.511 783-830/com.asite.Adoddle D/FirebaseCrashlytics: No events present for session ID 5F1819D303BA-0001-7F6C-1856258E9366 2020-07-22 16:23:48.511 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Removing session part files for ID 5F1819D303BA-0001-7F6C-1856258E9366 2020-07-22 16:23:48.521 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Closed all previously open sessions 2020-07-22 16:23:48.522 783-830/com.asite.Adoddle D/FirebaseCrashlytics: No reports are available. 2020-07-22 16:23:48.529 783-830/com.asite.Adoddle D/FirebaseCrashlytics: Initialization marker file removed: true 2020-07-22 16:23:50.212 783-832/com.asite.Adoddle D/FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _sc=LoginActivity, _si=-2112616185210274178}], name=_vs, timestampInMillis=1595415230013}] 2020-07-22 16:23:53.054 783-832/com.asite.Adoddle D/FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _pc=LoginActivity, _pi=-2112616185210274178, _sc=BasePhoneActivity, _si=-2112616185210274177}], name=_vs, timestampInMillis=1595415232972}]

2020-07-22 16:25:02.438 783-1098/com.asite.Adoddle D/FirebaseCrashlytics: Executing shutdown hook for awaitEvenIfOnMainThread task continuation executor 2020-07-22 16:25:02.439 783-1096/com.asite.Adoddle D/FirebaseCrashlytics: Executing shutdown hook for Crashlytics Exception Handler 2020-07-22 16:25:02.444 783-1097/com.asite.Adoddle D/FirebaseCrashlytics: Executing shutdown hook for com.google.firebase.crashlytics.startup

mrwillis21 commented 4 years ago

@UdjinNNN And just to be clear, you're not running a service, or separate processes, or anything in your app?

@mrwillis21 Only one thing we have is authenticator service that supports our authenticator class extended from AbstractAccountAuthenticator according to the Custom Auth. This service is really simple. We don't expect any issues from it.

Fair - to be more specific I should have said "You're not running Crashlytics in a service..." but it sounds like you aren't.

UdjinNNN commented 4 years ago

Fair - to be more specific I should have said "You're not running Crashlytics in a service..." but it sounds like you aren't.

@mrwillis21 Yes you're absolutely right. We are not running Crashlytics in a service.

brizoalejandro commented 4 years ago

I'm having same problem as described by asiteandroid. Can't see any crash logs in firebase console, using version com.google.firebase:firebase-crashlytics:17.1.1

mwshubham commented 4 years ago

+1

mwshubham commented 4 years ago

I'm having same problem as described by asiteandroid. Can't see any crash logs in firebase console, using version com.google.firebase:firebase-crashlytics:17.1.1

rockyPocky commented 4 years ago

I'm having exactly the same problem previously we were using fabric I removed all that was related to it, and added Firebase SDK, as I should. and at first, I was getting initialization successful. But there was an HTTP Request error with the upload report function. then I see that I forget to remove implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1' from .gradle files and now there is no httpRequest error but I'm getting FirebaseCrashlytics: Installer package name is: null FirebaseCrashlytics: Exception handling initialization successful

dariush-fathie commented 4 years ago

i'm having not exactly by the same problem:

Attempting to send crash report at time of crash...
09-01 14:03:22.513 30643 30692 D FirebaseCrashlytics: Send to Reports Endpoint for non-native reports disabled. Removing Reports Uploader report.
09-01 14:03:22.513 30643 30692 D FirebaseCrashlytics: Removing report at /data/user/0/.../files/.com.google.firebase.crashlytics/fatal-sessions/5F4E12E7010C-0001-77B3-404364495F21.cls
09-01 14:03:22.513 30643 30643 D FirebaseCrashlytics: Crashlytics completed exception processing. Invoking default exception handler.
JoyHong commented 4 years ago

Same problem, when a java crash occured, but native crash is ok.

Send to Reports Endpoint for non-native reports disabled

mrwillis21 commented 4 years ago

Hi @UdjinNNN - following up on your previous replies, specifically https://github.com/firebase/firebase-android-sdk/issues/1711#issuecomment-649541024, I had a few questions:

1) Do you have logs with the timestamp, process ID, and thread ID prefixes? 2) How are you triggering this crash? Does it happen on app startup? 3) Can you post the whole log, from initial app startup, through crashing?

Thanks so much for your patience with this!

dariush-fathie commented 4 years ago

Hi @UdjinNNN - following up on your previous replies, specifically #1711 (comment), I had a few questions:

  1. Do you have logs with the timestamp, process ID, and thread ID prefixes?
  2. How are you triggering this crash? Does it happen on app startup?
  3. Can you post the whole log, from initial app startup, through crashing?

Thanks so much for your patience with this!

  1. No. i just throwing an exception
  2. In Button click listener
  3. Unfortunately downgraded to fabric! temporarily
shawnthye commented 4 years ago

having the same issue long time ago The resolution is to unlink Fabric.

having the same issue in another project But I don't see the anyway to unlink Fabric anymore.

Anything related to this again?

JeneaVranceanu commented 4 years ago

Hello, @mrwillis21. Maybe that could be of interest to you. Basically, the issue was that I had no crash reports recorded/visible in Firebase Console -> Crashlytics section. Even though crash-free users percentage did change the list of issues was empty. Was able to resolve this issue and described in details how.

If you consider this comment off-topic or it is better to move it to a separate issue - I'll move to a new issue.


The issue.

For those who do not have FileNotFoundException and just do not see any crashes in Crashlytics tab in Firebase Console try manually enabling Crashlytics in your application before initializing FirebaseApp context.

FirebaseApp.initializeApp(this)
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true)
// Optional. Uncomment if you are using analytics. 
// FirebaseAnalytics.getInstance(this).setAnalyticsCollectionEnabled(true)

After rebuilding and installing the application from the Android Studio to the physical device, and generating one more crash, I successfully got a crash report to appear in Firebase Console. Previous reports did not appear (in some part that is to be expected since there were no reports made).

What has triggered me to do this?

I was migrating from Fabric to Firebase, as many do now due to Fabric being deprecated and turned off on 15 November 2020. I enabled logs using adb shell setprop log.tag.FirebaseCrashlytics DEBUG. This is part of testing your implementation. Due to having issues with crash reporting, I enabled that feature to take a look if there is anything useful in these logs.

What I have noticed is that FirebaseCrashlytics loads cached settings if there are any. Reading through them I found an interesting key-value pair that could probably be the issue:

"firebase_crashlytics_enabled":false

This setting was weird. There is one more related to Firebase Analytics: "collect_analytics":false.

Both of them are false for some reason though I never did turn them off explicitly. Never even played with these settings. Only migrated from Fabric to Firebase.

09-25 11:08:50.045 30646 30646 D FirebaseCrashlytics: Loaded cached settings: {"settings_version":3,"cache_duration":86400,
"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false},
"app":{"status":"activated","update_required":false,"report_upload_variant":2,"native_report_upload_variant":2},
"fabric":{"org_id":"FabricApiKeyWasHere","bundle_id":"your.app.package.name"},
"expires_at":1601028354301}

Enabling Crashlytics, as described at the beginning of this post, I was able to turn crash reporting on and get reports to appear in Firebase Console. Note, that cached settings still have "firebase_crashlytics_enabled":false. Even after multiple reinstalls/reruns of the application.


Out investigating.


Did some investigation. Note that this is all related to the applications migrated from Fabric to Firebase.

Q: When settings are cached? A: At the first initialization of the FirebaseApp. Settings are downloaded from Firebase servers.

Q: Haven't tried it yet, but will crash report work for those who do not have cached settings? A: There is no case when a device does not have cached settings except the very moment of the first FirebaseApp initialization. As soon as the app is initialized, settings are downloaded and saved to a cache file. Later settings will be read from there. A2: Yes - crash report will work even without setCrashlyticsCollectionEnabled(true). Looks like the problem with empty issues list is related to applications that were previously installed with Fabric and were updated to Firebase.

Q: Do these settings exist because the application previously used Fabric? A: Still not sure.

mehdi-salehi commented 4 years ago

same issue on 17.2.2:

W/System.err: remove failed: ENOENT (No such file or directory) : /data/user/0/test.app.com/files/.com.google.firebase.crashlytics/log-files/crashlytics-userlog-5F86C922028B-0001-7F63-C06B418C9E37.temp

kurtacious commented 4 years ago

edit: I believe that I have found the cause in our case. On Application creation, we're configure an observer of the user's logged-in state. If the user is logged out, we clear all application data, including the directory that Firebase Crashlytics is writing to.

Since Firebase Crashlytics initializes using a content provider, the directory it writes to is created before our Application class. Then, when our application class is created, our logged-in state listener is initialized and receives the initial logged-out state, which deletes the directory that Crashlytics had just created. Adding File(application.getFilesDir(), ".com.google.firebase.crashlytics") to a whitelist of files not to be deleted on logout seems to resolve the issue for us.

Leaving the original post for posterity:


Unfortunately I am also experiencing a similar issue in that my crash reports are not making it to the Firebase Crashlytics dashboard. I'm seeing a similar log as https://github.com/firebase/firebase-android-sdk/issues/1711#issuecomment-649541024 immediately following a crash that I am forcing:

2020-10-13 18:03:23.390 20527-20527/obfuscated.app.id D/FirebaseCrashlytics: Crashlytics is handling uncaught exception "java.lang.RuntimeException: Forcing crash 002" from thread main
2020-10-13 18:03:23.410 20527-20613/obfuscated.app.id D/FirebaseCrashlytics: No log data to include with this event.
2020-10-13 18:03:23.432 20527-20613/obfuscated.app.id D/FirebaseCrashlytics: Could not persist event for session OBFUSCATED-SESSION-ID
    java.io.FileNotFoundException: /data/user/0/obfuscated.app.id/files/.com.google.firebase.crashlytics/report-persistence/sessions/OBFUSCATED-SESSION-ID/event0000000000_ (No such file or directory)
        at java.io.FileOutputStream.open0(Native Method)
        at java.io.FileOutputStream.open(FileOutputStream.java:287)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:223)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:171)
        at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.writeTextFile(CrashlyticsReportPersistence.java:464)
        at com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence.persistEvent(CrashlyticsReportPersistence.java:152)
        at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistEvent(SessionReportingCoordinator.java:253)
        at com.google.firebase.crashlytics.internal.common.SessionReportingCoordinator.persistFatalEvent(SessionReportingCoordinator.java:122)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(CrashlyticsController.java:395)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$6.call(CrashlyticsController.java:388)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:106)
        at com.google.android.gms.tasks.zzf.run(Unknown Source:2)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
        at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:60)
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
        at java.lang.Thread.run(Thread.java:764)
2020-10-13 18:03:23.433 20527-20613/obfuscated.app.id E/FirebaseCrashlytics: Tried to write a fatal exception while no session was open.

Interestingly, when I was attempting to debug how and when Firebase Crashlytics was being initialized in our app, I found that when I add a breakpoint (pausing only current thread) to the beginning of doOpenSession() in the decompiled CrashlyticsController.class and quickly resuming once the breakpoint is hit then crash reporting (including breadcrumbs, messages, etc.) seem to work again. Additionally, I no longer see the Could not open log file: ... error logged at initialization. I'm not sure if that's helpful in diagnosing, but it seems to possibly indicate a race condition somewhere with async initialization.

Project details

Please let me know if I can provide any other information!

UdjinNNN commented 4 years ago

Hi @UdjinNNN - following up on your previous replies, specifically #1711 (comment), I had a few questions:

1. Do you have logs with the timestamp, process ID, and thread ID prefixes?

2. How are you triggering this crash? Does it happen on app startup?

3. Can you post the whole log, from initial app startup, through crashing?

Thanks so much for your patience with this!

Hey @mrwillis21 Check that log please from app start to the crash:

2020-10-21 18:16:12.650 15343-15343 W/ActivityThread: Application com.freshbooks.andromeda.debug can be debugged on port 8100...
2020-10-21 18:16:12.659 15343-15343 I/andromeda.debu: The ClassLoaderContext is a special shared library.
2020-10-21 18:16:12.664 15343-15343 I/andromeda.debu: The ClassLoaderContext is a special shared library.
2020-10-21 18:16:12.667 15343-15343 I/andromeda.debu: The ClassLoaderContext is a special shared library.
2020-10-21 18:16:12.974 15343-15343 I/MultiDex: VM with version 2.1.0 has multidex support
2020-10-21 18:16:12.974 15343-15343 I/MultiDex: Installing application
2020-10-21 18:16:12.974 15343-15343 I/MultiDex: VM has multidex support, MultiDex support library is disabled.
2020-10-21 18:16:13.005 15343-15343 I/FirebaseApp: Device unlocked: initializing all Firebase APIs for app [DEFAULT]
2020-10-21 18:16:13.029 15343-15343 D/FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
2020-10-21 18:16:13.029 15343-15343 D/FirebaseCrashlytics: Firebase Analytics is available.
2020-10-21 18:16:13.031 15343-15343 D/FirebaseCrashlytics: Firebase Analytics listener registered successfully.
2020-10-21 18:16:13.053 15343-15385 I/DynamiteModule: Considering local module com.google.android.gms.measurement.dynamite:19 and remote module com.google.android.gms.measurement.dynamite:18
2020-10-21 18:16:13.053 15343-15385 I/DynamiteModule: Selected local version of com.google.android.gms.measurement.dynamite
2020-10-21 18:16:13.064 15343-15343 D/FirebaseCrashlytics: Reading cached settings...
2020-10-21 18:16:13.071 15343-15343 D/FirebaseCrashlytics: Loaded cached settings: {"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false},"app":{"status":"activated","update_required":false,"report_upload_variant":2,"native_report_upload_variant":2},"fabric":{"org_id":"5ebc1bdfbc0faa762c000003","bundle_id":"com.freshbooks.andromeda.debug"},"expires_at":1603379677657}
2020-10-21 18:16:13.071 15343-15343 D/FirebaseCrashlytics: Returning cached settings.
2020-10-21 18:16:13.073 15343-15343 D/FirebaseCrashlytics: Mapping file ID is: 00000000000000000000000000000000
2020-10-21 18:16:13.074 15343-15343 I/FirebaseCrashlytics: Initializing Crashlytics 17.2.2
2020-10-21 18:16:13.075 15343-15343 D/FirebaseCrashlytics: Installer package name is: null
2020-10-21 18:16:13.097 15343-15343 D/FirebaseCrashlytics: Exception handling initialization successful
2020-10-21 18:16:13.102 15343-15343 I/FirebaseInitProvider: FirebaseApp initialization successful
2020-10-21 18:16:13.106 15343-15389 D/FirebaseCrashlytics: Created new Crashlytics IID: ab30a7548f48440f98caa64ac2c97a5d
2020-10-21 18:16:13.107 15343-15389 D/FirebaseCrashlytics: Opening a new session with ID 5F9050BD0061-0001-3BEF-1B5CF65A8FBF
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->peekLong(JZ)J (greylist, reflection, allowed)
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->pokeLong(JJZ)V (greylist, reflection, allowed)
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->pokeInt(JIZ)V (greylist, reflection, allowed)
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->peekInt(JZ)I (greylist, reflection, allowed)
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->pokeByte(JB)V (greylist, reflection, allowed)
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->peekByte(J)B (greylist, reflection, allowed)
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->pokeByteArray(J[BII)V (greylist, reflection, allowed)
2020-10-21 18:16:13.132 15343-15382 W/andromeda.debu: Accessing hidden method Llibcore/io/Memory;->peekByteArray(J[BII)V (greylist, reflection, allowed)
2020-10-21 18:16:13.133 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->objectFieldOffset(Ljava/lang/reflect/Field;)J (greylist,core-platform-api, reflection, allowed)
2020-10-21 18:16:13.133 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden field Ljava/nio/Buffer;->address:J (greylist, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->arrayBaseOffset(Ljava/lang/Class;)I (greylist,core-platform-api, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->arrayIndexScale(Ljava/lang/Class;)I (greylist, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V (greylist, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, reflection, allowed)
2020-10-21 18:16:13.134 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, reflection, allowed)
2020-10-21 18:16:13.136 15343-15389 D/FirebaseCrashlytics: Initialization marker file created.
2020-10-21 18:16:13.136 15343-15389 D/FirebaseCrashlytics: Registered Firebase Analytics event receiver for breadcrumbs
2020-10-21 18:16:13.136 15343-15389 D/FirebaseCrashlytics: Finalizing previously open sessions.
2020-10-21 18:16:13.140 15343-15389 D/FirebaseCrashlytics: No open sessions to be closed.
2020-10-21 18:16:13.140 15343-15389 D/FirebaseCrashlytics: Closed all previously open sessions
2020-10-21 18:16:13.145 15343-15389 D/FirebaseCrashlytics: No reports are available.
2020-10-21 18:16:13.147 15343-15389 D/FirebaseCrashlytics: Initialization marker file removed: true
2020-10-21 18:16:13.154 15343-15343 W/com.facebook.internal.Validate: FacebookActivity is not declared in the AndroidManifest.xml. If you are using the facebook-common module or dependent modules please add com.facebook.FacebookActivity to your AndroidManifest.xml file. See https://developers.facebook.com/docs/android/getting-started for more info.
2020-10-21 18:16:13.168 15343-15343 W/com.facebook.UserSettingsManager: Please set a value for AutoLogAppEventsEnabled. Set the flag to TRUE if you want to collect app install, app launch and in-app purchase events automatically. To request user consent before collecting data, set the flag value to FALSE, then change to TRUE once user consent is received. Learn more: https://developers.facebook.com/docs/app-events/getting-started-app-events-android#disable-auto-events.
2020-10-21 18:16:13.168 15343-15343 W/com.facebook.UserSettingsManager: You haven't set a value for AdvertiserIDCollectionEnabled. Set the flag to TRUE if you want to collect Advertiser ID for better advertising and analytics results. To request user consent before collecting data, set the flag value to FALSE, then change to TRUE once user consent is received. Learn more: https://developers.facebook.com/docs/app-events/getting-started-app-events-android#disable-auto-events.
2020-10-21 18:16:13.199 15343-15418 D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-10-21 18:16:13.212 15343-15417 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.212 15343-15343 D/FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
2020-10-21 18:16:13.213 15343-15417 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.213 15343-15418 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.213 15343-15418 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.222 15343-15343 W/Adjust: SANDBOX: Adjust is running in Sandbox mode. Use this setting for testing. Don't forget to set the environment to `production` before publishing!
2020-10-21 18:16:13.223 15343-15343 W/Adjust: SANDBOX: Adjust is running in Sandbox mode. Use this setting for testing. Don't forget to set the environment to `production` before publishing!
2020-10-21 18:16:13.226 15343-15430 D/Adjust: Attribution file not found
2020-10-21 18:16:13.232 15343-15417 D/TcpOptimizer: TcpOptimizer-ON
2020-10-21 18:16:13.238 15343-15430 D/Adjust: Read Activity state: ec:0 sc:1 ssc:3 sl:155.2 ts:9.6 la:11:12:13 uuid:ea9df86c-d7b9-4586-9a19-b8c9cfa9070b
2020-10-21 18:16:13.239 15343-15430 D/Adjust: Session Callback parameters file not found
2020-10-21 18:16:13.242 15343-15430 D/Adjust: Read Session Partner parameters: {cd=Base conversion}
2020-10-21 18:16:13.242 15343-15430 D/Adjust: adjust_config.properties file not found in this app
2020-10-21 18:16:13.257 15343-15343 I/com.newrelic.android: isInstrumented: checking for Mono instrumentation flag - NO
2020-10-21 18:16:13.257 15343-15343 E/com.newrelic.android: Failed to detect New Relic instrumentation.  Something likely went wrong during your build process and you should visit http://support.newrelic.com.
2020-10-21 18:16:13.272 15343-15343 D/ImageLoader: Initialize ImageLoader with configuration
2020-10-21 18:16:13.292 15343-15390 V/FA: App measurement collection enabled
2020-10-21 18:16:13.295 15343-15390 V/FA: App measurement enabled for app package, google app id: com.freshbooks.andromeda.debug, 1:580326590415:android:1154727c0cc42e34
2020-10-21 18:16:13.295 15343-15417 D/libmdf: libmdf v2.9.0.0 On 64bit PLATFORM
2020-10-21 18:16:13.297 15343-15390 I/FA: App measurement initialized, version: 32053
2020-10-21 18:16:13.297 15343-15390 I/FA: To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
2020-10-21 18:16:13.297 15343-15390 I/FA: To enable faster debug mode event logging run:
      adb shell setprop debug.firebase.analytics.app com.freshbooks.andromeda.debug
2020-10-21 18:16:13.297 15343-15390 D/FA: Debug-level message logging enabled
2020-10-21 18:16:13.333 15343-15385 V/FA: onActivityCreated
2020-10-21 18:16:13.339 15343-15398 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.339 15343-15398 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.346 15343-15390 V/FA: Connecting to remote service
2020-10-21 18:16:13.376 15343-15390 V/FA: Connection attempt already in progress
2020-10-21 18:16:13.390 15343-15445 D/libEGL: loaded /vendor/lib64/egl/libGLES_mali.so
2020-10-21 18:16:13.400 15343-15390 V/FA: Connection attempt already in progress
2020-10-21 18:16:13.401 15343-15390 D/FA: Setting app measurement enabled (FE): true
2020-10-21 18:16:13.405 15343-15390 D/FA: Updating Scion state (FE)
2020-10-21 18:16:13.410 15343-15343 D/PhoneWindow: forceLight changed to true [] from com.android.internal.policy.PhoneWindow.updateForceLightNavigationBar:4268 com.android.internal.policy.DecorView.updateColorViews:1513 com.android.internal.policy.PhoneWindow.dispatchWindowAttributesChanged:3246 android.view.Window.setFlags:1148 com.android.internal.policy.PhoneWindow.generateLayout:2474 
2020-10-21 18:16:13.411 15343-15343 I/MultiWindowDecorSupport: updateCaptionType >> DecorView@b37a59a[], isFloating: false, isApplication: true, hasWindowDecorCaption: false, hasWindowControllerCallback: true
2020-10-21 18:16:13.411 15343-15343 D/MultiWindowDecorSupport: setCaptionType = 0, DecorView = DecorView@b37a59a[]
2020-10-21 18:16:13.421 15343-15390 V/FA: Connection attempt already in progress
2020-10-21 18:16:13.430 15343-15343 W/andromeda.debu: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
2020-10-21 18:16:13.432 15343-15343 W/andromeda.debu: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
2020-10-21 18:16:13.522 15343-15343 W/ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@f134403
2020-10-21 18:16:13.558 15343-15430 I/Adjust: Google Play Services Advertising ID read correctly at start time
2020-10-21 18:16:13.561 15343-15430 V/Adjust: Foreground timer configured to fire after 60.0 seconds of starting and cycles every 60.0 seconds
2020-10-21 18:16:13.568 15343-15460 D/Adjust: Package queue file not found
2020-10-21 18:16:13.571 15343-15385 V/FA: onActivityCreated
2020-10-21 18:16:13.575 15343-15343 D/PhoneWindow: forceLight changed to true [] from com.android.internal.policy.PhoneWindow.updateForceLightNavigationBar:4268 com.android.internal.policy.DecorView.updateColorViews:1513 com.android.internal.policy.PhoneWindow.dispatchWindowAttributesChanged:3246 android.view.Window.setFlags:1148 com.android.internal.policy.PhoneWindow.generateLayout:2474 
2020-10-21 18:16:13.576 15343-15343 I/MultiWindowDecorSupport: updateCaptionType >> DecorView@2083662[], isFloating: false, isApplication: true, hasWindowDecorCaption: false, hasWindowControllerCallback: true
2020-10-21 18:16:13.576 15343-15343 D/MultiWindowDecorSupport: setCaptionType = 0, DecorView = DecorView@2083662[]
2020-10-21 18:16:13.617 15343-15343 E/TypefaceUtils: Could not get typeface.
2020-10-21 18:16:13.634 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:13.636 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:13.637 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:13.637 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.637 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:13.637 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V (greylist, linking, allowed)
2020-10-21 18:16:13.639 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.640 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.648 15343-15418 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.648 15343-15418 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:13.648 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:13.650 15343-15417 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.650 15343-15417 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V (greylist, linking, allowed)
2020-10-21 18:16:13.651 15343-15417 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.651 15343-15343 E/TypefaceUtils: Could not get typeface.
2020-10-21 18:16:13.652 15343-15417 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.659 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.700 15343-15343 E/TypefaceUtils: Could not get typeface.
2020-10-21 18:16:13.718 15343-15343 E/TypefaceUtils: Could not get typeface.
2020-10-21 18:16:13.759 15343-15343 W/andromeda.debu: Accessing hidden method Ljava/lang/invoke/MethodHandles$Lookup;-><init>(Ljava/lang/Class;I)V (greylist, reflection, allowed)
2020-10-21 18:16:13.766 15343-15343 W/andromeda.debu: Accessing hidden method Ldalvik/system/CloseGuard;->get()Ldalvik/system/CloseGuard; (greylist,core-platform-api, reflection, allowed)
2020-10-21 18:16:13.766 15343-15343 W/andromeda.debu: Accessing hidden method Ldalvik/system/CloseGuard;->open(Ljava/lang/String;)V (greylist,core-platform-api, reflection, allowed)
2020-10-21 18:16:13.766 15343-15343 W/andromeda.debu: Accessing hidden method Ldalvik/system/CloseGuard;->warnIfOpen()V (greylist,core-platform-api, reflection, allowed)
2020-10-21 18:16:13.782 15343-15343 W/AHBottomNavigation: The items list should have at least 3 items
2020-10-21 18:16:13.783 15343-15343 I/chatty: uid=11073(com.freshbooks.andromeda.debug) identical 1 line
2020-10-21 18:16:13.783 15343-15343 W/AHBottomNavigation: The items list should have at least 3 items
2020-10-21 18:16:13.797 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:13.798 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:13.798 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.798 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V (greylist, linking, allowed)
2020-10-21 18:16:13.799 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.799 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V (greylist, linking, allowed)
2020-10-21 18:16:13.799 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.799 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:13.800 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:13.800 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.801 15343-15418 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.816 15343-15343 I/GAv4: Google Analytics 12.4.51 is starting up. To enable debug logging on a device run:
      adb shell setprop log.tag.GAv4 DEBUG
      adb logcat -s GAv4
2020-10-21 18:16:13.828 15343-15343 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:13.831 15343-15390 V/FA: Activity resumed, time: 310812744
2020-10-21 18:16:13.833 15343-15343 W/com.newrelic.android: Analytics controller is not initialized!
2020-10-21 18:16:13.833 15343-15343 D/FreshBooks.NewRelicAna: Tracking LaunchPage with properties : {description=Launch Page}
2020-10-21 18:16:13.833 15343-15343 W/AHBottomNavigation: The items list should have at least 3 items
2020-10-21 18:16:13.833 15343-15430 V/Adjust: Foreground timer starting
2020-10-21 18:16:13.834 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:13.834 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:13.835 15343-15343 W/AHBottomNavigation: The items list should have at least 3 items
2020-10-21 18:16:13.835 15343-15430 V/Adjust: Subsession start
2020-10-21 18:16:13.835 15343-15343 W/AHBottomNavigation: The items list should have at least 3 items
2020-10-21 18:16:13.836 15343-15471 W/GAv4: CampaignTrackingReceiver is not registered, not exported or is disabled. Installation campaign tracking is not possible. See http://goo.gl/8Rd3yj for instructions.
2020-10-21 18:16:13.843 15343-15430 V/Adjust: Started subsession 4 of session 1
2020-10-21 18:16:13.851 15343-15430 D/Adjust: Wrote Activity state: ec:0 sc:1 ssc:4 sl:248.1 ts:9.6 la:11:12:13 uuid:ea9df86c-d7b9-4586-9a19-b8c9cfa9070b
2020-10-21 18:16:13.868 15343-15463 W/andromeda.debu: Accessing hidden field Lsun/misc/Unsafe;->theUnsafe:Lsun/misc/Unsafe; (greylist, reflection, allowed)
2020-10-21 18:16:13.871 15343-15463 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->allocateInstance(Ljava/lang/Class;)Ljava/lang/Object; (greylist, reflection, allowed)
2020-10-21 18:16:13.872 15343-15390 I/FA: Tag Manager is not found and thus will not be used
2020-10-21 18:16:13.873 15343-15343 E/TypefaceUtils: Could not get typeface.
2020-10-21 18:16:13.875 15343-15343 E/TypefaceUtils: Could not get typeface.
2020-10-21 18:16:13.890 15343-15474 V/Adjust: Attribution timer canceled
2020-10-21 18:16:13.890 15343-15474 V/Adjust: Attribution timer starting. Launching in 0.0 seconds
2020-10-21 18:16:13.900 15343-15476 V/Adjust: Attribution timer fired
2020-10-21 18:16:13.919 15343-15390 V/FA: Connection attempt already in progress
2020-10-21 18:16:13.920 15343-15390 D/FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _sc=LaunchActivity, _si=-4668095463450182227}], name=_vs, timestampInMillis=1603293373865}]
2020-10-21 18:16:13.921 15343-15390 V/FA: Connection attempt already in progress
2020-10-21 18:16:13.924 15343-15389 E/FirebaseCrashlytics: Could not open log file: /data/user/0/com.freshbooks.andromeda.debug/files/.com.google.firebase.crashlytics/log-files/crashlytics-userlog-5F9050BD0061-0001-3BEF-1B5CF65A8FBF.temp
    java.io.FileNotFoundException: /data/user/0/com.freshbooks.andromeda.debug/files/.com.google.firebase.crashlytics/log-files/crashlytics-userlog-5F9050BD0061-0001-3BEF-1B5CF65A8FBF.temp.tmp: open failed: ENOENT (No such file or directory)
        at libcore.io.IoBridge.open(IoBridge.java:496)
        at java.io.RandomAccessFile.<init>(RandomAccessFile.java:289)
        at com.google.firebase.crashlytics.internal.log.QueueFile.open(QueueFile.java:221)
        at com.google.firebase.crashlytics.internal.log.QueueFile.initialize(QueueFile.java:202)
        at com.google.firebase.crashlytics.internal.log.QueueFile.<init>(QueueFile.java:117)
        at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.openLogFile(QueueFileLogStore.java:128)
        at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.writeToLog(QueueFileLogStore.java:52)
        at com.google.firebase.crashlytics.internal.log.LogFileManager.writeToLog(LogFileManager.java:85)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:645)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:641)
        at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:106)
        at com.google.android.gms.tasks.zze.run(com.google.android.gms:play-services-tasks@@17.1.0:5)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:60)
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
        at java.lang.Thread.run(Thread.java:919)
     Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
        at libcore.io.Linux.open(Native Method)
        at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
        at libcore.io.BlockGuardOs.open(BlockGuardOs.java:252)
        at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
        at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:8002)
        at libcore.io.IoBridge.open(IoBridge.java:482)
        at java.io.RandomAccessFile.<init>(RandomAccessFile.java:289) 
        at com.google.firebase.crashlytics.internal.log.QueueFile.open(QueueFile.java:221) 
        at com.google.firebase.crashlytics.internal.log.QueueFile.initialize(QueueFile.java:202) 
        at com.google.firebase.crashlytics.internal.log.QueueFile.<init>(QueueFile.java:117) 
        at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.openLogFile(QueueFileLogStore.java:128) 
        at com.google.firebase.crashlytics.internal.log.QueueFileLogStore.writeToLog(QueueFileLogStore.java:52) 
        at com.google.firebase.crashlytics.internal.log.LogFileManager.writeToLog(LogFileManager.java:85) 
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:645) 
        at com.google.firebase.crashlytics.internal.common.CrashlyticsController$10.call(CrashlyticsController.java:641) 
        at com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker$3.then(CrashlyticsBackgroundWorker.java:106) 
        at com.google.android.gms.tasks.zze.run(com.google.android.gms:play-services-tasks@@17.1.0:5) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 
        at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:60) 
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27) 
        at java.lang.Thread.run(Thread.java:919) 
2020-10-21 18:16:13.926 15343-15343 D/ViewRootImpl@1574642[LaunchActivity]: setView = com.android.internal.policy.DecorView@2083662 TM=true MM=false
2020-10-21 18:16:13.931 15343-15390 D/FA: Connected to remote service
2020-10-21 18:16:13.932 15343-15390 V/FA: Processing queued up service tasks: 6
2020-10-21 18:16:13.937 15343-15343 D/LaunchActivity: Me: com.freshbooks.api2.entities.masterlock.Me@8fb1afd
2020-10-21 18:16:13.938 15343-15343 D/LaunchActivity: BusinessId: 446732
2020-10-21 18:16:14.000 15343-15343 D/ViewRootImpl@1574642[LaunchActivity]: Relayout returned: old=(0,0,1080,2220) new=(0,0,1080,2220) req=(1080,2220)0 dur=12 res=0x7 s={true 492468449280} ch=true
2020-10-21 18:16:14.000 15343-15443 D/OpenGLRenderer: createReliableSurface : 0x72cdc64100(0x72a9683000)
2020-10-21 18:16:14.048 15343-15443 D/OpenGLRenderer: makeCurrent EglSurface : 0x0 -> 0x0
2020-10-21 18:16:14.064 15343-15443 I/mali_winsys: new_window_surface() [1080x2220] return: 0x3000
2020-10-21 18:16:14.092 15343-15443 D/OpenGLRenderer: makeCurrent EglSurface : 0x0 -> 0x729e191c80
2020-10-21 18:16:14.097 15343-15443 W/Gralloc3: mapper 3.x is not supported
2020-10-21 18:16:14.102 15343-15443 I/gralloc: Arm Module v1.0
2020-10-21 18:16:14.176 15343-15343 D/Adjust: InstallReferrer invoke method name: onInstallReferrerSetupFinished
2020-10-21 18:16:14.176 15343-15343 D/Adjust: InstallReferrer invoke arg: 0
2020-10-21 18:16:14.201 15343-15343 D/Adjust: installReferrer: utm_source=google-play&utm_medium=organic, clickTime: 0, installBeginTime: 0
2020-10-21 18:16:14.201 15343-15343 D/Adjust: installVersion: null, clickTimeServer: 0, installBeginServer: 0, googlePlayInstant: false
2020-10-21 18:16:14.202 15343-15343 D/Adjust: Install Referrer read successfully. Closing connection
2020-10-21 18:16:14.216 15343-15343 D/Adjust: Install Referrer API connection closed
2020-10-21 18:16:14.247 15343-15474 V/Adjust: Path:      attribution
    ClientSdk: android4.24.1
    Parameters:
        android_uuid     ea9df86c-d7b9-4586-9a19-b8c9cfa9070b
        api_level        29
        app_token        e3jfl4hndou8
        app_version      1.19.3
        attribution_deeplink 1
        created_at       2020-10-21T18:16:13.901Z+0300
        device_name      SM-G960F
        device_type      phone
        environment      sandbox
        event_buffering_enabled 0
        gps_adid         9ebcf8e6-f03a-4144-8c89-71891e67aa73
        gps_adid_attempt 1
        gps_adid_src     service
        initiated_by     sdk
        needs_response_details 1
        os_name          android
        os_version       10
        package_name     com.freshbooks.andromeda.debug
        tracking_enabled 1
2020-10-21 18:16:14.255 15343-15343 W/SupportMenuInflater: Ignoring attribute 'itemActionViewLayout'. Action view already specified.
2020-10-21 18:16:14.256 15343-15474 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:14.256 15343-15474 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:14.287 15343-15396 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:14.287 15343-15396 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:14.297 15343-15425 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:14.297 15343-15425 I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2020-10-21 18:16:14.312 15343-15477 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.313 15343-15477 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:14.314 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:14.314 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.315 15343-15343 D/ViewRootImpl@1574642[LaunchActivity]: MSG_WINDOW_FOCUS_CHANGED 1 1
2020-10-21 18:16:14.315 15343-15343 D/InputMethodManager: prepareNavigationBarInfo() DecorView@2083662[LaunchActivity]
2020-10-21 18:16:14.315 15343-15343 D/InputMethodManager: getNavigationBarColor() -855310
2020-10-21 18:16:14.316 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:14.321 15343-15343 D/EmergencyMode: [EmergencyManager] android createPackageContext successful: com.freshbooks.andromeda.debug
2020-10-21 18:16:14.328 15343-15343 D/InputMethodManager: prepareNavigationBarInfo() DecorView@2083662[LaunchActivity]
2020-10-21 18:16:14.328 15343-15343 D/InputMethodManager: getNavigationBarColor() -855310
2020-10-21 18:16:14.328 15343-15343 V/InputMethodManager: Starting input: tba=com.freshbooks.andromeda.debug ic=null mNaviBarColor -855310 mIsGetNaviBarColorSuccess true , NavVisible : true , NavTrans : false
2020-10-21 18:16:14.328 15343-15343 D/InputMethodManager: startInputInner - Id : 0
2020-10-21 18:16:14.328 15343-15343 I/InputMethodManager: startInputInner - mService.startInputOrWindowGainedFocus
2020-10-21 18:16:14.333 15343-15343 D/ViewRootImpl@1574642[LaunchActivity]: MSG_RESIZED_REPORT: frame=(0,0,1080,2220) ci=(0,72,0,0) vi=(0,72,0,0) or=1
2020-10-21 18:16:14.338 15343-15475 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.338 15343-15475 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:14.339 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.340 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:14.344 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.368 15343-15343 D/ScrollView: initGoToTop
2020-10-21 18:16:14.546 15343-15481 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.547 15343-15481 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:14.550 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.554 15343-15425 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.555 15343-15425 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.555 15343-15425 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:14.555 15343-15425 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V (greylist, linking, allowed)
2020-10-21 18:16:14.555 15343-15425 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.556 15343-15425 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.556 15343-15425 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:14.559 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.587 15343-15465 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:14.588 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.617 15343-15474 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.618 15343-15474 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.618 15343-15474 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putLong(Ljava/lang/Object;JJ)V (greylist, linking, allowed)
2020-10-21 18:16:14.618 15343-15474 V/Adjust: Response: {"app_token":"e3jfl4hndou8","adid":"959967d5c34e78daabb9779fedd115f3","timestamp":"2020-10-21T15:16:13.619Z+0000","message":"Attribution found","attribution":{"tracker_token":"dno0es","tracker_name":"Organic","network":"Organic"}}
2020-10-21 18:16:14.618 15343-15474 I/Adjust: Attribution found
2020-10-21 18:16:14.619 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.623 15343-15430 D/Adjust: Wrote Activity state: ec:0 sc:1 ssc:4 sl:248.1 ts:9.6 la:11:12:13 uuid:ea9df86c-d7b9-4586-9a19-b8c9cfa9070b
2020-10-21 18:16:14.628 15343-15430 D/Adjust: Wrote Attribution: tt:dno0es tn:Organic net:Organic cam:null adg:null cre:null cl:null adid:959967d5c34e78daabb9779fedd115f3
2020-10-21 18:16:14.656 15343-15486 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.656 15343-15486 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:14.658 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:14.661 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:14.661 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:14.663 15343-15356 I/andromeda.debu: Background young concurrent copying GC freed 181741(15MB) AllocSpace objects, 127(3508KB) LOS objects, 78% free, 6755KB/30MB, paused 486us total 107.166ms
2020-10-21 18:16:14.673 15343-15430 V/Adjust: Key cd already present with the same value
2020-10-21 18:16:14.725 15343-15343 D/ViewRootImpl@1574642[LaunchActivity]: Relayout returned: old=(0,0,1080,2220) new=(0,0,1080,2220) req=(1080,2220)0 dur=4 res=0x1 s={true 492468449280} ch=false
2020-10-21 18:16:14.730 15343-15343 D/ScrollView:  onsize change changed 
2020-10-21 18:16:14.796 15343-15343 D/LaunchPresenter: Unread notifications count: 0
2020-10-21 18:16:14.801 15343-15343 D/InputMethodManager: prepareNavigationBarInfo() DecorView@2083662[LaunchActivity]
2020-10-21 18:16:14.801 15343-15343 D/InputMethodManager: getNavigationBarColor() -855310
2020-10-21 18:16:14.801 15343-15343 V/InputMethodManager: Starting input: tba=com.freshbooks.andromeda.debug ic=null mNaviBarColor -855310 mIsGetNaviBarColorSuccess true , NavVisible : true , NavTrans : false
2020-10-21 18:16:14.802 15343-15343 D/InputMethodManager: startInputInner - Id : 0
2020-10-21 18:16:14.802 15343-15343 D/LaunchPresenter: Unread notifications count: 0
2020-10-21 18:16:14.836 15343-15343 D/ViewRootImpl@1574642[LaunchActivity]: Relayout returned: old=(0,0,1080,2220) new=(0,0,1080,2220) req=(1080,2220)0 dur=5 res=0x1 s={true 492468449280} ch=false
2020-10-21 18:16:14.866 15343-15343 I/LaunchActivity: Abilities received
2020-10-21 18:16:14.866 15343-15343 W/AHBottomNavigation: The items list should have at least 3 items
2020-10-21 18:16:14.869 15343-15343 I/chatty: uid=11073(com.freshbooks.andromeda.debug) identical 1 line
2020-10-21 18:16:14.876 15343-15343 W/AHBottomNavigation: The items list should have at least 3 items
2020-10-21 18:16:15.013 15343-15473 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.014 15343-15473 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.017 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:15.018 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.021 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.156 15343-15481 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.156 15343-15481 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.157 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:15.157 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.158 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.158 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.159 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.159 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.204 15343-15343 I/chatty: uid=11073(com.freshbooks.andromeda.debug) identical 2 lines
2020-10-21 18:16:15.247 15343-15475 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.248 15343-15475 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.251 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:15.251 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.254 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.294 15343-15477 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.295 15343-15477 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.296 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.298 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.408 15343-15343 D/LaunchPresenter: Unread notifications count: 0
2020-10-21 18:16:15.412 15343-15343 D/LaunchPresenter: Unread notifications count: 0
2020-10-21 18:16:15.475 15343-15465 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.475 15343-15465 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.485 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.487 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.490 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.490 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.490 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.495 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.514 15343-15479 W/com.newrelic.android: Analytics controller is not initialized!
2020-10-21 18:16:15.569 15343-15537 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.569 15343-15537 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.571 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.577 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.578 15343-15539 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.578 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.583 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.586 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.586 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.586 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.602 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.602 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.602 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.845 15343-15473 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.845 15343-15473 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.847 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getInt(Ljava/lang/Object;J)I (greylist, linking, allowed)
2020-10-21 18:16:15.848 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.857 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.899 15343-15430 V/Adjust: Key cd already present with the same value
2020-10-21 18:16:15.906 15343-15465 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.906 15343-15465 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:15.908 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:15.920 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:15.998 15343-15544 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:15.998 15343-15544 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:16.002 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:16.002 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:16.008 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:16.008 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:16.346 15343-15486 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getObject(Ljava/lang/Object;J)Ljava/lang/Object; (greylist, linking, allowed)
2020-10-21 18:16:16.346 15343-15486 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putObject(Ljava/lang/Object;JLjava/lang/Object;)V (greylist, linking, allowed)
2020-10-21 18:16:16.350 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->putInt(Ljava/lang/Object;JI)V (greylist, linking, allowed)
2020-10-21 18:16:16.358 15343-15382 W/andromeda.debu: Accessing hidden method Lsun/misc/Unsafe;->getLong(Ljava/lang/Object;J)J (greylist,core-platform-api, linking, allowed)
2020-10-21 18:16:16.396 15343-15430 V/Adjust: Key cd already present with the same value
2020-10-21 18:16:16.975 15343-15463 D/FirebaseCrashlytics: Crashlytics is handling uncaught exception "java.lang.RuntimeException: Test Crashlytics Exception" from thread DefaultDispatcher-worker-1
2020-10-21 18:16:16.981 15343-15389 E/FirebaseCrashlytics: Tried to write a fatal exception while no session was open.
2020-10-21 18:16:16.983 15343-15463 D/FirebaseCrashlytics: Crashlytics completed exception processing. Invoking default exception handler.

    --------- beginning of crash
2020-10-21 18:16:16.985 15343-15463 E/AndroidRuntime: FATAL EXCEPTION: DefaultDispatcher-worker-1
    Process: com.freshbooks.andromeda.debug, PID: 15343
    java.lang.RuntimeException: Test Crashlytics Exception
        at com.freshbooks.andromeda.ui.launch.LaunchPresenter$start$1$1.invokeSuspend(LaunchPresenter.kt:112)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at android.os.Handler.handleCallback(Handler.java:883)
        at android.os.Handler.dispatchMessage(Handler.java:100)
        at android.os.Looper.loop(Looper.java:237)
        at android.app.ActivityThread.main(ActivityThread.java:8125)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
2020-10-21 18:16:17.076 15343-15430 V/Adjust: Foreground timer suspended with 56.8 seconds left
2020-10-21 18:16:17.076 15343-15430 V/Adjust: Subsession end
2020-10-21 18:16:17.083 15343-15430 D/Adjust: Wrote Activity state: ec:0 sc:1 ssc:4 sl:251.3 ts:12.9 la:11:12:13 uuid:ea9df86c-d7b9-4586-9a19-b8c9cfa9070b
2020-10-21 18:16:17.098 15343-15390 V/FA: Recording user engagement, ms: 3241
2020-10-21 18:16:17.104 15343-15390 V/FA: Activity paused, time: 310816007
2020-10-21 18:16:17.118 15343-15343 D/ViewRootImpl@1574642[LaunchActivity]: MSG_WINDOW_FOCUS_CHANGED 0 1
2020-10-21 18:16:17.118 15343-15463 I/Process: Sending signal. PID: 15343 SIG: 9

The way how we trigger crash on app start:

  launch(Dispatchers.Default) {
            delay(3000)
            withContext(Dispatchers.Main){
                throw RuntimeException("Test Crashlytics Exception")
            }
  }

The crashlytic initialisation:

 FirebaseApp.initializeApp(this)
 FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true)
 FirebaseAnalytics.getInstance(this).setAnalyticsCollectionEnabled(true)

The app config:

ext.kotlin_version = '1.4.10'
....
classpath 'com.android.tools.build:gradle:4.1.0'
....
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
classpath 'com.google.firebase:perf-plugin:1.3.2'
....
implementation 'com.google.firebase:firebase-analytics-ktx:17.6.0'
implementation 'com.google.firebase:firebase-crashlytics:17.2.2'
implementation 'com.google.firebase:firebase-perf:19.0.9'
wise4rmgod commented 4 years ago

I am having a similar issue too in the release version of my app, but it works fine with debug variant

KalaiSelvanG commented 4 years ago

I have a similar issue with the version 17.2.2. Not getting the reports in firebase console. I need scratch my head with the deadline Migrating our app from fabric to firebase within NOV 15 :(

Here is my log :

11-06 13:49:34.223 7077 7105 D FirebaseCrashlytics: Unsent reports are available. 11-06 13:49:34.224 7077 7105 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API. 11-06 13:49:34.225 7077 7105 D FirebaseCrashlytics: Automatic data collection is enabled. Allowing upload. 11-06 13:49:34.229 7077 7105 D FirebaseCrashlytics: Initialization marker file removed: true 11-06 13:49:37.215 7077 7077 D FirebaseCrashlytics: Crashlytics is handling uncaught exception "java.lang.RuntimeException: Unable to resume activity {com.abc.android/ com.abc.SplashActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference" from thread main 11-06 13:49:37.217 7077 7105 D FirebaseCrashlytics: Persisting fatal event for session 5FA50715037700011BA578ECA9D2610D 11-06 13:49:38.375 7077 7105 D FirebaseCrashlytics: Closing open sessions. 11-06 13:49:38.376 7077 7105 D FirebaseCrashlytics: Closing session: 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.376 7077 7105 D FirebaseCrashlytics: Collecting session parts for ID 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.377 7077 7105 D FirebaseCrashlytics: Session 5FA507150377-0001-1BA5-78ECA9D2610D has fatal exception: true 11-06 13:49:38.381 7077 7105 D FirebaseCrashlytics: Session 5FA507150377-0001-1BA5-78ECA9D2610D has non-fatal exceptions: false 11-06 13:49:38.383 7077 7105 D FirebaseCrashlytics: Collecting SessionStart data for session ID 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.386 7077 7105 D FirebaseCrashlytics: Collecting SessionUser data for session ID 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.390 7077 7105 D FirebaseCrashlytics: Collecting SessionApp data for session ID 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.391 7077 7105 D FirebaseCrashlytics: Collecting SessionOS data for session ID 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.402 7077 7105 D FirebaseCrashlytics: Collecting SessionDevice data for session ID 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.404 7077 7105 D FirebaseCrashlytics: Removing session part files for ID 5FA507150377-0001-1BA5-78ECA9D2610D 11-06 13:49:38.406 7077 7105 D FirebaseCrashlytics: Finalizing report for session 5FA50715037700011BA578ECA9D2610D 11-06 13:49:39.644 7077 7105 D FirebaseCrashlytics: Opening a new session with ID 5FA5071B027F-0002-1BA5-78ECA9D2610D 11-06 13:49:39.668 7077 7105 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API. 11-06 13:49:41.217 7077 7077 D FirebaseCrashlytics: Crashlytics completed exception processing. Invoking default exception handler.

What happens after Crashlytics completed exception processing. Invoking default exception handler? Does the reports are sent or not?

mrwillis21 commented 4 years ago

@KalaiSelvanG Can you try the instructions here: https://github.com/firebase/firebase-android-sdk/issues/1944#issuecomment-706385711 and post the logs from the tags mentioned as well? Also, can you restart your app after crashing and post the logs after restart as well?

I will say, this does look a bit odd to me, though different from the original issue.

KalaiSelvanG commented 4 years ago

@mrwillis21 When I tried with another test device, I can able to see the cash reports. Strange behavior :(

Does adding google service plugin in app module change firebase instance id? we used library project for FCM earlier and google service plugin were added in that module. Now firebase crashlytics implementation recommend to add the google service plugin in app module. If we do that, I can see a difference in firebase instance ID.

moetouban commented 4 years ago

hey @mrwillis21 in addition to what @UdjinNNN has provided. We noticed a spike in API calls failures to firebase so thought to mention it as it might help in debugging the issue here:

POST: https://firebaseinstallations.googleapis.com/v1/projects/andromeda-88668/installations
Response
java.net.UnknownHostException: Unable to resolve host "firebaseinstallations.googleapis.com": No address associated with hostname 
AANikolaev commented 4 years ago

^

erickjuarezglobant commented 4 years ago

any hopeful news? I'm having the same issue

At my end Crashlytics it's only reporting non-faltal issues

moetouban commented 4 years ago

@mrwillis21 another interesting thing we discovered

firebase is hitting this endpoint: https://firebase-settings.crashlytics.com/spi/v2/platforms/android/gmp/1:580326590415:android:a256cdf5370666dd/settings

and the response is:

{"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false},"app":{"status":"activated","update_required":false,"report_upload_variant":2,"native_report_upload_variant":2},"fabric":{"org_id":"5ebc0d84f4d5a553f6000001","bundle_id":"com.freshbooks.andromeda"}}

not sure why it's firebase_crashlytics_enabled":false or how to force it to true. we are already setting it to true through FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true)

mrwillis21 commented 4 years ago

Hi @moetouban et al,

We're still working through some lingering issues like this that are proving hard to pin down, so we definitely haven't forgotten about you! :) As a quick follow-up: you're not able to see any crash reports at all, correct? And you've tried it out on multiple devices?

To answer your most recent question though - that settings response is only relevant to the legacy Fabric Crashlytics SDK, it does not change any behavior in the current Firebase Crashlytics SDK. It always comes back "false" for any apps that have migrated to Firebase or apps newly created within Firebase.

You shouldn't need to manually override setCrashlyticsCollectionEnabled, as true is the default - but it also doesn't hurt anything. :)

mrwillis21 commented 4 years ago

@erickjuarezglobant Interesting! We've heard a few reports (a la https://github.com/firebase/firebase-android-sdk/issues/2163) of this particular issue (non-fatals working correctly but not fatals), and we're trying to pin down exactly what might be going on - can you please run adb shell setprop log.tag.FirebaseCrashlytics DEBUG to enable Firebase Crashlytics debug logging on your device, then launch, crash, and relaunch your app and post the logs?

erickjuarezglobant commented 4 years ago

@mrwillis21 Sure:


11-18 10:41:39.576 10900 10900 I FirebaseCrashlytics: Initializing Crashlytics 17.3.0
11-18 10:44:13.345 10900 11110 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _sc=MenuActivity, _si=-112831886605349725}], name=_vs, timestampInMillis=1605717853149}]
11-18 10:44:16.261 10900 11110 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _et=3035, _sc=MenuActivity, _si=-112831886605349725}], name=_e, timestampInMillis=1605717856166}]
11-18 10:44:16.502 10900 11110 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _pc=MenuActivity, _pi=-112831886605349725, _sc=CategoryActivity, _si=-112831886605349724}], name=_vs, timestampInMillis=1605717856399}]
11-18 10:44:18.535 10900 11110 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _et=2039, _sc=CategoryActivity, _si=-112831886605349}], name=_e, timestampInMillis=1605717858433}]
11-18 10:44:19.818 11188 11188 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
11-18 10:44:19.819 11188 11188 D FirebaseCrashlytics: Firebase Analytics is available.
11-18 10:44:19.821 11188 11188 D FirebaseCrashlytics: Firebase Analytics listener registered successfully.
11-18 10:44:19.840 11188 11188 D FirebaseCrashlytics: Reading cached settings...
11-18 10:44:19.849 11188 11188 D FirebaseCrashlytics: Loaded cached settings: {"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false},"app":{"status":"activated","update_required":false,"report_upload_variant":2,"native_report_upload_variant":2},"fabric":{"org_id":"555236b23e932ae7d500","bundle_id":"com.app.sometext.android.qa"},"expires_at":1605802730428}
11-18 10:44:19.849 11188 11188 D FirebaseCrashlytics: Returning cached settings.
11-18 10:44:19.851 11188 11188 D FirebaseCrashlytics: Mapping file ID is: 00000000000000000000000000000000
11-18 10:44:19.851 11188 11188 I FirebaseCrashlytics: Initializing Crashlytics 17.3.0
11-18 10:44:19.854 11188 11188 D FirebaseCrashlytics: Installer package name is: null
11-18 10:44:19.862 11188 11188 D FirebaseCrashlytics: Exception handling initialization successful
11-18 10:44:19.874 11188 11221 D FirebaseCrashlytics: Found matching FID, using Crashlytics IID: b262059160f1462a867f2e9883
11-18 10:44:19.875 11188 11221 D FirebaseCrashlytics: Opening a new session with ID 5FB54F63035F-0001-2BB4-517A857B
11-18 10:44:19.941 11188 11221 D FirebaseCrashlytics: Initialization marker file created.
11-18 10:44:19.944 11188 11221 D FirebaseCrashlytics: Registered Firebase Analytics event receiver for breadcrumbs
11-18 10:44:19.944 11188 11221 D FirebaseCrashlytics: Finalizing previously open sessions.
11-18 10:44:19.953 11188 11221 D FirebaseCrashlytics: Closing open sessions.
11-18 10:44:19.953 11188 11221 D FirebaseCrashlytics: Closing session: 5FB54EC3025A-0001-2A94-517A857B
11-18 10:44:19.955 11188 11221 D FirebaseCrashlytics: Collecting session parts for ID 5FB54EC3025A-0001-2A94-517A857B
11-18 10:44:19.955 11188 11221 D FirebaseCrashlytics: Session 5FB54EC3025A-0001-2A94-517A857B has fatal exception: false
11-18 10:44:19.956 11188 11221 D FirebaseCrashlytics: Session 5FB54EC3025A-0001-2A94-517A857B has non-fatal exceptions: false
11-18 10:44:19.956 11188 11221 D FirebaseCrashlytics: No events present for session ID 5FB54EC3025A-0001-2A94-517A857B
11-18 10:44:19.956 11188 11221 D FirebaseCrashlytics: Removing session part files for ID 5FB54EC3025A-0001-2A94-517A857B
11-18 10:44:19.959 11188 11221 D FirebaseCrashlytics: Finalizing report for session 5FB54EC3025A00012A94517A857B
11-18 10:44:19.960 11188 11221 D FirebaseCrashlytics: Session 5FB54EC3025A00012A94517A857B has no events.
11-18 10:44:19.961 11188 11221 D FirebaseCrashlytics: Closed all previously open sessions
11-18 10:44:19.962 11188 11221 D FirebaseCrashlytics: No reports are available.
11-18 10:44:19.965 11188 11221 D FirebaseCrashlytics: Initialization marker file removed: true
11-18 10:44:20.631 11188 11188 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
11-18 10:44:21.678 11188 11226 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=auto, _sc=MenuActivity, _si=3657993386814001828}], name=_vs, timestampInMillis=1605717861512}]

I'm using this libraries:

implementation 'com.google.firebase:firebase-core:18.0.0'
implementation 'com.google.firebase:firebase-analytics:18.0.0'
implementation 'com.google.firebase:firebase-crashlytics:17.3.0'
implementation 'com.google.firebase:firebase-crashlytics-ktx:17.3.0'
implementation 'com.google.firebase:firebase-perf:19.0.9'
implementation 'com.google.firebase:firebase-messaging:21.0.0'
mrwillis21 commented 4 years ago

@erickjuarezglobant this is interesting, because I don't see any logs for the crash, or the relaunch - if you do the same without filtering to only FirebaseCrashlytics, do you see the normal exception report in the logs? If so, is there any other FirebaseCrashlytics logging in that context?

erickjuarezglobant commented 4 years ago

Oh sorry @mrwillis21 may the log is not showing because we restart the app automatically but here is and now I can see the log of the issue:

11-18 13:03:04.424 17079 17079 D FirebaseCrashlytics: Crashlytics is handling uncaught exception "java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.sometext.android.qa/com.app.sometext.shop.product.presentation.view.ProductActivity}: java.lang.RuntimeException: Test Exception" from thread main
11-18 13:03:04.429 17079 17114 D FirebaseCrashlytics: Persisting fatal event for session 5FB56FD20287000142B7517A857B
11-18 13:03:04.695 17079 17114 D FirebaseCrashlytics: Closing open sessions.
11-18 13:03:04.695 17079 17114 D FirebaseCrashlytics: Closing session: 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.695 17079 17114 D FirebaseCrashlytics: Collecting session parts for ID 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.695 17079 17114 D FirebaseCrashlytics: Session 5FB56FD20287-0001-42B7-517A857B has fatal exception: true
11-18 13:03:04.695 17079 17114 D FirebaseCrashlytics: Session 5FB56FD20287-0001-42B7-517A857B has non-fatal exceptions: false
11-18 13:03:04.695 17079 17114 D FirebaseCrashlytics: Collecting SessionStart data for session ID 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.696 17079 17114 D FirebaseCrashlytics: Collecting SessionUser data for session ID 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.696 17079 17114 D FirebaseCrashlytics: Collecting SessionApp data for session ID 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.697 17079 17114 D FirebaseCrashlytics: Collecting SessionOS data for session ID 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.698 17079 17114 D FirebaseCrashlytics: Collecting SessionDevice data for session ID 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.698 17079 17114 D FirebaseCrashlytics: Removing session part files for ID 5FB56FD20287-0001-42B7-517A857B
11-18 13:03:04.699 17079 17114 D FirebaseCrashlytics: Finalizing report for session 5FB56FD20287000142B7517A857B
11-18 13:03:04.782 17079 17114 D FirebaseCrashlytics: Opening a new session with ID 5FB56FE8030D-0002-42B7-517A857B
11-18 13:03:04.787 17079 17114 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
11-18 13:03:04.790 17079 17309 D FirebaseCrashlytics: Logging Crashlytics event to Firebase
11-18 13:03:04.792 17079 17309 D FirebaseCrashlytics: Awaiting app exception callback from FA...
11-18 13:03:04.892 17079 17117 D FirebaseCrashlytics: Received Analytics message: 3 Bundle[{params=Bundle[{_o=clx, _r=1, timestamp=1605726184424, fatal=1}], name=_ae, timestampInMillis=1605726184790}]
11-18 13:03:04.892 17079 17309 D FirebaseCrashlytics: App exception callback received from FA listener.
11-18 13:03:04.943 17079 17114 D FirebaseCrashlytics: Crashlytics report successfully enqueued to DataTransport: 5FB56FD20287000142B7517A857B
11-18 13:03:04.952 17079 17079 D FirebaseCrashlytics: Crashlytics completed exception processing. Invoking default exception handler.
11-18 13:03:04.955 17079 17114 D FirebaseCrashlytics: Attempting to send crash report at time of crash...
11-18 13:03:04.957 17079 17114 D FirebaseCrashlytics: Report configured to be sent via DataTransport.
11-18 13:03:04.957 17079 17114 D FirebaseCrashlytics: Removing report at /data/user/0/com.app.sometext.android.qa/files/.com.google.firebase.crashlytics/fatal-sessions/5FB56FD20287-0001-42B7-517A857B.cls
erickjuarezglobant commented 4 years ago

@mrwillis21 Update: After I remove our code for restart the app, I can see the fatal issue:

image

Our fragment of code that restart the app is:

Thread.setDefaultUncaughtExceptionHandler(
                    new ExceptionHandler(this, MenuActivity.class));

let me verify if this may be the issue

erickjuarezglobant commented 4 years ago

@mrwillis21 Well that was the issue, our restart thread stop the tracking at the middle or something like that

image

JoseHuarcaya commented 4 years ago

Hi @asiteandroid ,

I hope you are very well,

I am getting the same issues with FireBase Crashlytics that you was facing on Jul,

11-23 11:15:08.781 5108 5217 D FirebaseCrashlytics: Executing shutdown hook for com.google.firebase.crashlytics.startup 11-23 11:15:08.781 5108 5216 D FirebaseCrashlytics: Executing shutdown hook for Crashlytics Exception Handler 11-23 11:15:08.781 5108 5218 D FirebaseCrashlytics: Executing shutdown hook for awaitEvenIfOnMainThread task continuation executor

How did you resolve it , please ?

Regards.

mrwillis21 commented 3 years ago

@erickjuarezglobant Glad to hear it! Another person in another thread had a similar issue, here's my response to them, which I hope will clarify some things for you. :) https://github.com/firebase/firebase-android-sdk/issues/1952#issuecomment-736659812

moetouban commented 3 years ago

Hi @moetouban et al,

We're still working through some lingering issues like this that are proving hard to pin down, so we definitely haven't forgotten about you! :) As a quick follow-up: you're not able to see any crash reports at all, correct? And you've tried it out on multiple devices?

To answer your most recent question though - that settings response is only relevant to the legacy Fabric Crashlytics SDK, it does not change any behavior in the current Firebase Crashlytics SDK. It always comes back "false" for any apps that have migrated to Firebase or apps newly created within Firebase.

You shouldn't need to manually override setCrashlyticsCollectionEnabled, as true is the default - but it also doesn't hurt anything. :)

Hey @mrwillis21 we are still having issues for crashes not appearing on firebase dashboard but we got some crashes reported from time to time. In the last 30 days we only got 3 crashes appearing on the dashboard but other tools we use report much much more. We are in process of consolidating the tools we are using for analytics, crash and performance monitoring into one and we would like to know whether we can have this issue solved for us before taking a decision. Screenshot_20210127-203501.png

pinadaniel commented 3 years ago

In my case, there was a problem with the external library (Passbase), which deleted all internal files during initialization. 🤯

FALL1N1dev commented 2 years ago

I have configured crashlytics as per Firebase Documentation https://firebase.google.com/docs/crashlytics/get-started?platform=android. But crash reports not generated and uploaded to server.

server

Kindly refer my build details.

Here is our project-level build.gradle

buildscript {

    repositories {
        google()
        jcenter()

        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.2.1'
        classpath 'com.google.gms:google-services:4.3.10'
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'

    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'https://jitpack.io'}
        maven{ url 'https://maven.google.com/' }
        mavenCentral()

        flatDir {
            dirs 'libs'
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

build.gradle(:app)

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

android {

    compileSdkVersion 28
    defaultConfig {
        applicationId "com.XXX.XXX"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 375
        versionName "2.25.1"

        multiDexEnabled true
        testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
        dataBinding {
            enabled = true
        }
        signingConfig signingConfigs.config
    }

    android {
        lintOptions {
            checkReleaseBuilds false
            abortOnError false
        }
    }

    flavorDimensions "appVariant", "projectCode"
    productFlavors {
        A {
            applicationId 'com.XXX.A'
            dimension "appVariant"
        }
        B {
            applicationId 'com.XXX.B'
            dimension "appVariant"
        }
        C {
            applicationId 'com.XXX.C'
            dimension "appVariant"
        }
        D {
            applicationId 'com.XXX.D'
            dimension "appVariant"
        }
        DEV {
            dimension "projectCode"
        }
        QA {
            dimension "projectCode"
        }
        LIVE {
            dimension "projectCode"
        }
        DEMO {
            dimension "projectCode"
        }
        BETA {
            dimension "projectCode"
        }
    }

    applicationVariants.all { variant ->
        variant.outputs.all { output ->
            def project = "XXX"
            def SEP = "_"
            def flavor = variant.productFlavors[0].name
            def projcode = variant.productFlavors[1].name
            def buildType = variant.buildType.name
            def buildTypeName = "";
            switch (buildType) {
                case "ABC": buildTypeName = SEP + "AB"; break;
                case "XYZ": buildTypeName = SEP + "XY"; break;
                default:
                    buildTypeName = "";
            }

            def version = variant.versionName
            def newApkName = project + buildTypeName + SEP + flavor + SEP + projcode + SEP + version + ".apk"

            outputFileName = new File(newApkName)
        }
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    buildTypes {
        debug {

            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
            buildConfigField "String", "AREA", "\"\""
        }

        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
            buildConfigField "String", "AREA", "\"\""
        }
        ABC {
            signingConfig signingConfigs.config
            minifyEnabled false
            buildConfigField "String", "AREA", "\"_A\""
        }
        XYZ {
            signingConfig signingConfigs.config
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
            buildConfigField "String", "AREA", "\"_X\""
        }
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/dependencies.txt'
        exclude 'META-INF/LGPL2.1'
    }
}

repositories {

    maven {
        url 'https://maven.google.com/'
        name 'Google'
    }

}

dependencies {
    def room_version = "1.1.1"
    def lifecycle_version = "1.1.1"
    def work_version = "1.0.0-beta01"
    implementation files('libs/commons-net-3.3.jar')
    implementation files('libs/httpclient-4.3.4.jar')
    implementation files('libs/httpcore-4.3.2.jar')
    implementation files('libs/httpmime-4.3.4.jar')
    implementation files('libs/silipmlib.jar')
    implementation files('libs/HyperLogLib8.jar')

    // Import the BoM for the Firebase platform
    implementation platform('com.google.firebase:firebase-bom:29.3.0')

    implementation 'com.google.firebase:firebase-crashlytics'
    implementation 'com.google.firebase:firebase-analytics'
    implementation 'com.google.firebase:firebase-messaging'

    //dependency for Workmanager
    implementation 'androidx.work:work-runtime:2.0.1'

    //dependencies for Room database
    implementation 'androidx.room:room-runtime:2.0.0'
    //noinspection GradleCompatible
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    annotationProcessor 'androidx.room:room-compiler:2.0.0'
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'androidx.appcompat:appcompat:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.google.android.material:material:1.0.0'
    //dependency for custom progress dialog

    //dependency for retrofit
    implementation 'com.squareup.retrofit2:retrofit:2.4.0'
    implementation 'com.google.code.gson:gson:2.8.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.1.0'

    //dependency for joda time for date time calculation
    implementation 'joda-time:joda-time:2.10'

    //dependency for glide
    implementation 'com.github.bumptech.glide:glide:3.7.0'

    //dependency for custom toast
    implementation 'com.valdesekamdem.library:md-toast:0.9.0'

    //dependency for marshmallow permission - dexter library
    implementation 'com.karumi:dexter:4.2.0'

    // ViewModel and LiveData
    implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
    annotationProcessor 'androidx.lifecycle:lifecycle-compiler:2.0.0'

    // alternately - if using Java8, use the following instead of compiler
    implementation 'androidx.lifecycle:lifecycle-common-java8:2.0.0'

    implementation 'com.jakewharton:butterknife:10.1.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'

    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'
    implementation project(':floatingmenu')
    implementation project(':html2bitmap')
    debugImplementation 'com.amitshekhar.android:debug-db:1.0.4'
    implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
    implementation 'com.github.vipulasri:timelineview:1.0.6'
    implementation 'me.relex:circleindicator:1.2.2@aar'
    implementation 'com.haozhang.libary:android-slanted-textview:1.2'
    implementation 'com.google.android.gms:play-services-maps:15.0.1'
    implementation 'com.google.android.gms:play-services-location:15.0.1'

    // implementation 'com.google.android.gms:play-services-gcm:11.8.0'

    // implementation 'com.google.android.gms:play-services-ads:11.8.0'
    implementation('com.github.florent37:materialviewpager:1.2.3') {
        exclude group: 'com.android.support'
    }

    implementation 'com.orhanobut:dialogplus:1.11@aar'

    //  implementation 'me.dm7.barcodescanner:zbar:1.8.4'
    implementation 'me.dm7.barcodescanner:zxing:1.9'
    implementation 'com.journeyapps:zxing-android-embedded:2.3.0@aar'
    implementation 'com.journeyapps:zxing-android-legacy:2.3.0@aar'
    implementation 'com.journeyapps:zxing-android-integration:2.3.0@aar'
    implementation 'com.google.zxing:core:3.2.0'
    implementation 'net.cachapa.expandablelayout:expandablelayout:2.9.2'
    implementation 'com.github.siyamed:android-shape-imageview:0.9.+@aar'
    implementation files('libs/HyperLogLib8.jar')
    implementation project(':scandecode-release')
    implementation 'com.tt:whorlviewlibrary:1.0.3'
    implementation 'io.reactivex:rxandroid:1.2.1'
    implementation 'io.reactivex:rxjava:1.1.6'
    implementation 'com.jakewharton.rxbinding:rxbinding:0.4.0'
    implementation 'com.jakewharton.rxbinding:rxbinding-design:0.4.0'

    implementation 'org.apache.commons:commons-text:1.7'

    // these are for retrolambda and streams api
    implementation 'com.annimon:stream:1.1.2'

}

With initialisation:

FirebaseApp.initializeApp(this)
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true)

And manifest:

<meta-data
            android:name="firebase_crashlytics_collection_enabled"
            android:value="true" />

Here is the logcat for the Crashlytics/CrashTest crash:

2022-04-10 15:53:07.717 21310-21310/com.XXX.XXX E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.XXX.XXX, PID: 21310
    java.lang.RuntimeException: Test Crash
        at com.XXX.XXX.UI.HomeActivity$1.onClick(HomeActivity.java:345)
        at android.view.View.performClick(View.java:6392)
        at android.view.View$PerformClick.run(View.java:25133)
        at android.os.Handler.handleCallback(Handler.java:790)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:198)
        at android.app.ActivityThread.main(ActivityThread.java:7055)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:523)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:836)

This is the log that we receive when app relaunched after crash.

D:\user\Android Projects\XXX>adb logcat -s FirebaseCrashlytics
--------- beginning of main
--------- beginning of system
--------- beginning of crash
04-10 15:54:56.911 22018 22018 I FirebaseCrashlytics: Initializing Firebase Crashlytics 18.2.9 for com.XXX.XXX
04-10 15:54:56.926 22018 22018 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
04-10 15:54:56.940 22018 22018 D FirebaseCrashlytics: AnalyticsConnector now available.
04-10 15:54:56.943 22018 22018 D FirebaseCrashlytics: Registered Firebase Analytics listener.
04-10 15:54:56.948 22018 22018 D FirebaseCrashlytics: Mapping file ID is: 00000000000000000000000000000000
04-10 15:54:56.958 22018 22018 D FirebaseCrashlytics: Checking for cached settings...
04-10 15:54:56.992 22018 22018 D FirebaseCrashlytics: Loaded cached settings: {"settings_version":3,"cache_duration":86400,"features":{"collect_logged_exceptions":true,"collect_reports":
true,"collect_analytics":false,"prompt_enabled":false,"push_enabled":false,"firebase_crashlytics_enabled":false,"collect_anrs":true,"collect_metric_kit":false},"app":{"status":"activated
","update_required":false,"report_upload_variant":2,"native_report_upload_variant":2},"fabric":{"org_id":"62513aa60277ea5e0396d4ef","bundle_id":"com.XXX.XXX"},"on_demand_
upload_rate_per_minute":10,"on_demand_backoff_base":1.2,"on_demand_backoff_step_duration_seconds":60,"expires_at":1649666891559}
04-10 15:54:56.996 22018 22018 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
04-10 15:54:57.113 22018 22018 D FirebaseCrashlytics: Successfully configured exception handler.
04-10 15:54:57.116 22018 22049 D FirebaseCrashlytics: Opening a new session with ID 6252B07803E20001560228F94565CB5E
04-10 15:54:57.183 22018 22049 D FirebaseCrashlytics: Registered Firebase Analytics event receiver for breadcrumbs
04-10 15:54:58.013 22018 22018 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.
04-10 15:54:58.642 22018 22018 D FirebaseCrashlytics: Crashlytics automatic data collection ENABLED by API.

These are set to false in cached settings:

"collect_analytics":false,
"firebase_crashlytics_enabled":false,

This setting was weird. Both of them are false for some reason though I never did turn them off explicitly. Never even played with these settings.

Not sure what is wrong. Any help will be appreciated.

mrichards commented 2 years ago

Hi @FALL1N1dev, the collect_reports field in the settings response is the one that matters, and it is true in your case. So your configuration appears to be correct.

When the RuntimeException occurs, you should see FirebaseCrashlytics logging output that starts with "Handling uncaught exception...". That is missing from the logcat that you shared, which leads me to suspect one of two issues:

1) Are you using another SDK that overrides the default exception handler? One way to check this is to check the class type of the object returned by Thread.getDefaultUncaughtExceptionHandler().

2) Are you throwing the exception from a process other than the main app, such as service? If so, FirebaseApp needs to be initialized in each process.

Let us know how it goes after checking those two things.

google-oss-bot commented 2 years ago

Hey @UdjinNNN. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.

If you have more information that will help us get to the bottom of this, just add a comment!

FALL1N1dev commented 2 years ago

@google-oss-bot Sorry for the delay in update. @mrichards the first one seems to be my issue. There was another utility logger library initialized in the application class that prevented crashlytics from collecting log. https://github.com/hypertrack/hyperlog-android . This library prevented the app from crashing. As I threw the uncaught exception... the app froze, and it didn't crash. After I commented the code that initializes this library from the application class. It started working like a charm. log.txt You can mark this issue closed. Than you @mrichards

google-oss-bot commented 2 years ago

Hey @UdjinNNN. We need more information to resolve this issue but there hasn't been an update in 5 weekdays. I'm marking the issue as stale and if there are no new updates in the next 5 days I will close it automatically.

If you have more information that will help us get to the bottom of this, just add a comment!