Во-первых, что я пытался решить проблему ниже:
Шаг 1. Я поместил метод в свой абстрактный класс BaseActivity и BaseActivity, чтобы узнать, когда деятельность остановлена и когда представление (корневое представление фрагмента) уничтожено [возвращает true в обоих случаях, но false перед событием (onStop (), onViewDestroyed ()) вызывается].
Шаг 2. Я запретил отображать один-единственный SnackBar при возврате true в любом из обоих. Также проверяется isFinishing () BaseActivity.
Но ошибка не исчезает.
Я хочу узнать больше об этом классе:
android.support.design.widget.BaseTransientBottomBar
и внутреннее исключение, связанное с ним, и способы устранения следующих проблем:
08-25 16:45:50.826 5618-5688/com.my_package D/CrashlyticsCore: Session 5B8139230285-0001-15F2-C62ED7C4B2D1 has fatal exception: true
08-25 16:45:50.827 5618-5688/com.my_package D/CrashlyticsCore: Session 5B8139230285-0001-15F2-C62ED7C4B2D1 has non-fatal exceptions: false
08-25 16:45:51.481 5618-5618/com.my_package E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.my_package, PID: 5618
java.lang.IllegalStateException: ScrollView can host only one direct child
at android.widget.ScrollView.addView(ScrollView.java:251)
at android.support.design.widget.BaseTransientBottomBar.showView(BaseTransientBottomBar.java:428)
at android.support.design.widget.BaseTransientBottomBar$1.handleMessage(BaseTransientBottomBar.java:176)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:168)
at android.app.ActivityThread.main(ActivityThread.java:5845)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
08-25 16:45:53.654 5618-5688/com.my_package D/CrashlyticsCore: Removing report at /data/user/0/com.my_package/files/.Fabric/com.crashlytics.sdk.android.crashlytics-core/fatal-sessions/5B8139230285-0001-15F2-C62ED7C4B2D1.cls
08-25 16:45:58.626 9576-9643/com.my_package D/CrashlyticsCore: Session 5B813A670174-0002-15F2-C62ED7C4B2D1 has fatal exception: false
08-25 16:45:58.627 9576-9643/com.my_package D/CrashlyticsCore: Session 5B813A670174-0002-15F2-C62ED7C4B2D1 has non-fatal exceptions: false
No events present for session ID 5B813A670174-0002-15F2-C62ED7C4B2D1
Removing session part files for ID 5B813A670174-0002-15F2-C62ED7C4B2D1
подробности:
Обратите внимание, что мое устройство HTC Desire 816, оно было запущено с KitKat и теперь обновлено до MarshMallow, но все еще содержит ошибки KitKat, такие как Camera не высвобождает ресурсы и не вылетает, впоследствии, после получения первого снимка.
Но для предотвращения этого должно быть какое-то решение, например, следующее:
https://stackoverflow.com/a/52014209/787399
Мои наилучшие пожелания.