java.lang.IllegalArgumentException: попытка удалить OnFrameMetricsAvailableListener, который никогда не был добавлен - PullRequest
0 голосов
/ 23 октября 2018

Приложение вылетает на Android 8.

Когда я пытаюсь открыть любое действие из mainActivity, затем возвращаюсь к основному действию и пытаюсь открыть любое другое действие, которое вылетает из приложения

это говорит о том, что приложение не может остановить основное действие!

это журнал

2018-10-23 12:19:33.963 20358-20358/global.medicount.healthpass.dev E/AndroidRuntime: FATAL EXCEPTION: main
Process: global.medicount.healthpass.dev, PID: 20358
java.lang.RuntimeException: Unable to stop activity {global.medicount.healthpass.dev/global.medicount.healthpass.ui.main.MainActivity}: java.lang.IllegalArgumentException: attempt to remove OnFrameMetricsAvailableListener that was never added
    at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:4038)
    at android.app.ActivityThread.handleStopActivity(ActivityThread.java:4087)
    at android.app.ActivityThread.-wrap24(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1625)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6518)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
 Caused by: java.lang.IllegalArgumentException: attempt to remove OnFrameMetricsAvailableListener that was never added
    at android.view.View.removeFrameMetricsListener(View.java:6252)
    at android.view.Window.removeOnFrameMetricsAvailableListener(Window.java:889)
    at android.support.v4.app.FrameMetricsAggregator$FrameMetricsApi24Impl.remove(FrameMetricsAggregator.java:436)
    at android.support.v4.app.FrameMetricsAggregator.remove(FrameMetricsAggregator.java:246)
    at com.google.android.gms.internal.firebase-perf.zze.onActivityStopped(Unknown Source:60)
    at android.app.Application.dispatchActivityStopped(Application.java:234)
    at android.app.Activity.onStop(Activity.java:1862)
    at android.support.v4.app.FragmentActivity.onStop(FragmentActivity.java:636)
    at android.support.v7.app.AppCompatActivity.onStop(AppCompatActivity.java:184)
    at global.medicount.healthpass.ui.base.BaseActivity.onStop(BaseActivity.java:388)
    at android.app.Instrumentation.callActivityOnStop(Instrumentation.java:1376)
    at android.app.Activity.performStop(Activity.java:7205)
    at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:4035)
    at android.app.ActivityThread.handleStopActivity(ActivityThread.java:4087) 
    at android.app.ActivityThread.-wrap24(Unknown Source:0) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1625) 
    at android.os.Handler.dispatchMessage(Handler.java:106) 
    at android.os.Looper.loop(Looper.java:164) 
    at android.app.ActivityThread.main(ActivityThread.java:6518) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 

Gradle:

dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        classpath 'com.google.gms:google-services:4.0.1'
        classpath 'com.google.firebase:firebase-plugins:1.1.5'
        classpath 'io.fabric.tools:gradle:1.25.4'
    }

зависимости:

    implementation "com.google.firebase:firebase-core:16.0.4"
    implementation "com.google.firebase:firebase-messaging:17.3.4"
    implementation 'com.google.firebase:firebase-perf:16.1.2'

Я протестировал эту проблему на старой версии Android (6), и проблема не возникает.и приложение работает очень хорошо.Я видел несколько решений для понижения firebase-pref, но это не решило мою проблему.и я понятия не имею, что мне делать.

Ответы [ 2 ]

0 голосов
/ 31 декабря 2018

Попробуйте удалить android:hardwareAccelerated="false" из AndroidManifest.xml в теге application.

Это решило мою проблему, не понизив ни одну из библиотек.

0 голосов
/ 24 октября 2018

Вот решение для моей проблемы, позволяющее компилировать и успешно запускать мой проект.

gradle project

buildscript {

    repositories {
        google()
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        classpath 'com.google.gms:google-services:4.0.1'
        classpath 'com.google.firebase:firebase-plugins:1.1.5'
        classpath 'io.fabric.tools:gradle:1.25.4'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven {
            url "https://maven.google.com" // Google's Maven repository
        }
    }
}

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

ext {
    // Sdk and tools
    minSdkVersion = 19
    targetSdkVersion = 28
    compileSdkVersion = 28
    buildToolsVersion = '28.0.0'
    versionCode = 18
    versionName = '3.6.0'

    // App dependencies
    supportLibraryVersion = '28.0.0'
    ....
}

И вот оноэто зависимости AppGradle

implementation "com.google.firebase:firebase-core:16.0.4"
implementation "com.google.firebase:firebase-messaging:17.3.4"
implementation "com.google.firebase:firebase-perf:16.1.2"

Кроме того, у меня есть проблема в задачах Async, поэтому он говорит, что Async может быть выполнен один раз, поэтому решение было

uploadUserIdProofTask.cancel(true);
uploadUserIdProofTask = new UploadUserIdProof();
uploadUserIdProofTask.execute(objects);

Эти строки помогли мне, я не знаю, какова связь между этим и журналом, но он работает для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...