jellyfin / jellyfin-androidtv

Android TV Client for Jellyfin
https://jellyfin.org
GNU General Public License v2.0
2.9k stars 492 forks source link

Crash similar to #4099 in 0.17.9 #4186

Open fatexs opened 2 weeks ago

fatexs commented 2 weeks ago

Describe the bug

Crash occured when trying to play an HEVC file on Android TV client.

Here is the device specs: https://www.iptv-anbieter.info/iptv-hardware/receiver/telekom/tv-one-box-v2.html

Works fine on web/Jellyfin media player on PC. Findroid seems also fine.

Logs


client: Jellyfin for Android TV client_version: 0.17.9 client_repository: https://github.com/jellyfin/jellyfin-androidtv type: crash_report format: markdown

Logs

Stack Trace:

java.lang.IllegalStateException: FragmentManager is already executing transactions
    at androidx.fragment.app.FragmentManager.ensureExecReady(FragmentManager.java:1937)
    at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1967)
    at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:317)
    at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.activateHistoryEntry(DestinationFragmentView.kt:159)
    at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.navigate(DestinationFragmentView.kt:94)
    at org.jellyfin.androidtv.ui.browsing.MainActivity.handleNavigationAction(MainActivity.kt:116)
    at org.jellyfin.androidtv.ui.browsing.MainActivity.access$handleNavigationAction(MainActivity.kt:33)
    at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invokeSuspend(MainActivity.kt:66)
    at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:8)
    at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:4)
    at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit(Emitters.kt:219)
    at kotlinx.coroutines.flow.FlowKt__ChannelsKt.emitAllImpl$FlowKt__ChannelsKt(Channels.kt:33)
    at kotlinx.coroutines.flow.FlowKt__ChannelsKt.access$emitAllImpl$FlowKt__ChannelsKt(Channels.kt:1)
    at kotlinx.coroutines.flow.FlowKt__ChannelsKt$emitAllImpl$1.invokeSuspend(Unknown Source:14)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.EventLoop.processUnconfinedEvent(EventLoop.common.kt:65)
    at kotlinx.coroutines.DispatchedTaskKt.resumeUnconfined(DispatchedTask.kt:241)
    at kotlinx.coroutines.DispatchedTaskKt.dispatch(DispatchedTask.kt:159)
    at kotlinx.coroutines.CancellableContinuationImpl.dispatchResume(CancellableContinuationImpl.kt:466)
    at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl(CancellableContinuationImpl.kt:500)
    at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl$default(CancellableContinuationImpl.kt:489)
    at kotlinx.coroutines.CancellableContinuationImpl.resumeWith(CancellableContinuationImpl.kt:364)
    at kotlinx.coroutines.flow.SharedFlowImpl.tryEmit(SharedFlow.kt:409)
    at org.jellyfin.androidtv.ui.navigation.NavigationRepositoryImpl.reset(NavigationRepository.kt:100)
    at org.jellyfin.androidtv.ui.navigation.NavigationRepository$DefaultImpls.reset(NavigationRepository.kt:59)
    at org.jellyfin.androidtv.ui.navigation.NavigationRepositoryImpl.reset(NavigationRepository.kt:62)
    at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.closePlayer(CustomPlaybackOverlayFragment.java:1316)
    at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.onViewCreated(CustomPlaybackOverlayFragment.java:242)
    at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:3152)
    at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:608)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:286)
    at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2164)
    at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2065)
    at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1971)
    at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:317)
    at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.activateHistoryEntry(DestinationFragmentView.kt:159)
    at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.onRestoreInstanceState(DestinationFragmentView.kt:187)
    at android.view.View.dispatchRestoreInstanceState(View.java:21017)
    at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:4000)
    at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:4006)
    at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:4006)
    at android.view.View.restoreHierarchyState(View.java:20995)
    at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2200)
    at android.app.Activity.onRestoreInstanceState(Activity.java:1724)
    at android.app.Activity.performRestoreInstanceState(Activity.java:1677)
    at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1376)
    at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3676)
    at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
    at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2210)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:201)
    at android.os.Looper.loop(Looper.java:288)
    at android.app.ActivityThread.main(ActivityThread.java:7843)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1006)
    Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@b1ccbed, Dispatchers.Main.immediate]

Logcat:

11-09 15:32:03.120 W/MediaSessionCompat(27047): Couldn't find a unique registered media button receiver in the given context.
11-09 15:32:03.128 D/ExoPlayerAudioPipeline(27047): Audio session id changed to 3785
11-09 15:32:03.129 V/io.ktor.client.plugins.HttpCallValidator(27047): Validating response for request http://10.24.0.164:8096/Sessions/Capabilities?playableMediaTypes=Video&playableMediaTypes=Audio&supportedCommands=DisplayContent&supportedCommands=SetSubtitleStreamIndex&supportedCommands=SetAudioStreamIndex&supportedCommands=DisplayMessage&supportedCommands=SendString&supportedCommands=VolumeUp&supportedCommands=VolumeDown&supportedCommands=SetVolume&supportedCommands=Mute&supportedCommands=Unmute&supportedCommands=ToggleMute&supportsMediaControl=true&supportsPersistentIdentifier=true
11-09 15:32:03.129 V/io.ktor.client.plugins.DefaultResponseValidation(27047): Skipping default response validation for http://10.24.0.164:8096/Sessions/Capabilities?playableMediaTypes=Video&playableMediaTypes=Audio&supportedCommands=DisplayContent&supportedCommands=SetSubtitleStreamIndex&supportedCommands=SetAudioStreamIndex&supportedCommands=DisplayMessage&supportedCommands=SendString&supportedCommands=VolumeUp&supportedCommands=VolumeDown&supportedCommands=SetVolume&supportedCommands=Mute&supportedCommands=Unmute&supportedCommands=ToggleMute&supportsMediaControl=true&supportsPersistentIdentifier=true
11-09 15:32:03.131 V/io.ktor.client.plugins.defaultTransformers(27047): Transformed with default transformers response body for http://10.24.0.164:8096/Sessions/Capabilities?playableMediaTypes=Video&playableMediaTypes=Audio&supportedCommands=DisplayContent&supportedCommands=SetSubtitleStreamIndex&supportedCommands=SetAudioStreamIndex&supportedCommands=DisplayMessage&supportedCommands=SendString&supportedCommands=VolumeUp&supportedCommands=VolumeDown&supportedCommands=SetVolume&supportedCommands=Mute&supportedCommands=Unmute&supportedCommands=ToggleMute&supportsMediaControl=true&supportsPersistentIdentifier=true to interface io.ktor.utils.io.ByteReadChannel (Kotlin reflection is not available)
11-09 15:32:03.132 D/org.jellyfin.sdk.api.sockets.DefaultSocketApi(27047): Using a KeepAlive message delay of 30 seconds
11-09 15:32:03.133 D/org.jellyfin.sdk.api.sockets.OkHttpSocketConnection(27047): Sending (raw) message {"MessageType":"KeepAlive"}
11-09 15:32:03.139 D/ExoPlayerAudioPipeline(27047): Applying gain (targetGain=null)
11-09 15:32:03.157 D/org.jellyfin.sdk.api.sockets.OkHttpSocketConnection(27047): Receiving (raw) message {"MessageId":"c5f6cd0b29694b60bb5d090facf351f5","MessageType":"KeepAlive"}
11-09 15:32:03.225 D/NavigationRepositoryImpl(27047): Navigating to Fragment(fragment=class org.jellyfin.androidtv.ui.home.HomeFragment (Kotlin reflection is not available), arguments=Bundle[{}]) (via reset, clearHistory=true)
11-09 15:32:03.225 D/StartupActivity(27047): Opening next activity Intent { flg=0x10004000 cmp=org.jellyfin.androidtv/.ui.browsing.MainActivity }
11-09 15:32:03.270 D/ACRA    (27047): onActivityPaused class org.jellyfin.androidtv.ui.startup.StartupActivity
11-09 15:32:03.295 I/ActivityThemeExtensionsKt(27047): Applying theme DARK
11-09 15:32:03.306 D/ACRA    (27047): onActivityCreated class org.jellyfin.androidtv.ui.browsing.MainActivity
11-09 15:32:03.326 W/LeanbackOverlayFragment(27047): PlaybackController is null, skipping initialization.
11-09 15:32:03.330 D/DefaultPlayerQueueState(27047): Queue changed, setting index to 0
11-09 15:32:03.344 I/HomeRowsFragment(27047): Updating audio queue in HomeFragment (onQueueStatusChanged)
11-09 15:32:03.374 I/org.jellyfin.sdk.api.ktor.KtorClient(27047): GET http://10.24.0.164:8096/Items?startIndex=0&limit=100&parentId=90df1311-56d6-98a5-0cc6-488aebc82309&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&enableTotalRecordCount=true&enableImages=true
11-09 15:32:03.376 V/io.ktor.client.plugins.HttpPlainText(27047): Adding Accept-Charset=UTF-8 to http://10.24.0.164:8096/Items?startIndex=0&limit=100&parentId=90df1311-56d6-98a5-0cc6-488aebc82309&fields=PrimaryImageAspectRatio&fields=Overview&fields=ItemCounts&fields=DisplayPreferencesId&fields=ChildCount&enableTotalRecordCount=true&enableImages=true
11-09 15:32:03.380 I/org.jellyfin.sdk.api.ktor.KtorClient(27047): GET http://10.24.0.164:8096/Items/90df1311-56d6-98a5-0cc6-488aebc82309/SpecialFeatures
11-09 15:32:03.382 V/io.ktor.client.plugins.HttpPlainText(27047): Adding Accept-Charset=UTF-8 to http://10.24.0.164:8096/Items/90df1311-56d6-98a5-0cc6-488aebc82309/SpecialFeatures
11-09 15:32:03.395 D/ACRA    (27047): onActivityStarted class org.jellyfin.androidtv.ui.browsing.MainActivity
11-09 15:32:03.425 D/CompatibilityChangeReporter(27047): Compat change id reported: 171228096; UID 10102; state: ENABLED
11-09 15:32:03.483 D/CompatibilityChangeReporter(27047): Compat change id reported: 147798919; UID 10102; state: ENABLED
11-09 15:32:03.489 D/NavigationRepositoryImpl(27047): Navigating to Fragment(fragment=class org.jellyfin.androidtv.ui.home.HomeFragment (Kotlin reflection is not available), arguments=Bundle[{}]) (via reset, clearHistory=false)
11-09 15:32:03.498 D/CustomPlaybackOverlayFragment(27047): Stopping!
11-09 15:32:03.526 W/LeanbackOverlayFragment(27047): PlaybackController is null, skipping initialization.
11-09 15:32:03.528 D/DefaultPlayerQueueState(27047): Queue changed, setting index to 0
11-09 15:32:03.564 E/ACRA    (27047): ACRA caught a IllegalStateException for org.jellyfin.androidtv
11-09 15:32:03.564 E/ACRA    (27047): java.lang.IllegalStateException: FragmentManager is already executing transactions
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.FragmentManager.ensureExecReady(FragmentManager.java:1937)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1967)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:317)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.activateHistoryEntry(DestinationFragmentView.kt:159)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.navigate(DestinationFragmentView.kt:94)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.MainActivity.handleNavigationAction(MainActivity.kt:116)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.MainActivity.access$handleNavigationAction(MainActivity.kt:33)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invokeSuspend(MainActivity.kt:66)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:8)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.MainActivity$onCreate$2.invoke(Unknown Source:4)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit(Emitters.kt:219)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.flow.FlowKt__ChannelsKt.emitAllImpl$FlowKt__ChannelsKt(Channels.kt:33)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.flow.FlowKt__ChannelsKt.access$emitAllImpl$FlowKt__ChannelsKt(Channels.kt:1)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.flow.FlowKt__ChannelsKt$emitAllImpl$1.invokeSuspend(Unknown Source:14)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.EventLoop.processUnconfinedEvent(EventLoop.common.kt:65)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.DispatchedTaskKt.resumeUnconfined(DispatchedTask.kt:241)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.DispatchedTaskKt.dispatch(DispatchedTask.kt:159)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.CancellableContinuationImpl.dispatchResume(CancellableContinuationImpl.kt:466)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl(CancellableContinuationImpl.kt:500)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl$default(CancellableContinuationImpl.kt:489)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.CancellableContinuationImpl.resumeWith(CancellableContinuationImpl.kt:364)
11-09 15:32:03.564 E/ACRA    (27047):   at kotlinx.coroutines.flow.SharedFlowImpl.tryEmit(SharedFlow.kt:409)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.navigation.NavigationRepositoryImpl.reset(NavigationRepository.kt:100)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.navigation.NavigationRepository$DefaultImpls.reset(NavigationRepository.kt:59)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.navigation.NavigationRepositoryImpl.reset(NavigationRepository.kt:62)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.closePlayer(CustomPlaybackOverlayFragment.java:1316)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.onViewCreated(CustomPlaybackOverlayFragment.java:242)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:3152)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:608)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:286)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2164)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2065)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1971)
11-09 15:32:03.564 E/ACRA    (27047):   at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:317)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.activateHistoryEntry(DestinationFragmentView.kt:159)
11-09 15:32:03.564 E/ACRA    (27047):   at org.jellyfin.androidtv.ui.browsing.DestinationFragmentView.onRestoreInstanceState(DestinationFragmentView.kt:187)
11-09 15:32:03.564 E/ACRA    (27047):   at android.view.View.dispatchRestoreInstanceState(View.java:21017)
11-09 15:32:03.564 E/ACRA    (27047):   at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:4000)
11-09 15:32:03.564 E/ACRA    (27047):   at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:4006)
11-09 15:32:03.565 E/ACRA    (27047):   at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:4006)
11-09 15:32:03.565 E/ACRA    (27047):   at android.view.View.restoreHierarchyState(View.java:20995)
11-09 15:32:03.565 E/ACRA    (27047):   at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2200)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.Activity.onRestoreInstanceState(Activity.java:1724)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.Activity.performRestoreInstanceState(Activity.java:1677)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1376)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3676)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2210)
11-09 15:32:03.565 E/ACRA    (27047):   at android.os.Handler.dispatchMessage(Handler.java:106)
11-09 15:32:03.565 E/ACRA    (27047):   at android.os.Looper.loopOnce(Looper.java:201)
11-09 15:32:03.565 E/ACRA    (27047):   at android.os.Looper.loop(Looper.java:288)
11-09 15:32:03.565 E/ACRA    (27047):   at android.app.ActivityThread.main(ActivityThread.java:7843)
11-09 15:32:03.565 E/ACRA    (27047):   at java.lang.reflect.Method.invoke(Native Method)
11-09 15:32:03.565 E/ACRA    (27047):   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
11-09 15:32:03.565 E/ACRA    (27047):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1006)
11-09 15:32:03.565 E/ACRA    (27047):   Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@b1ccbed, Dispatchers.Main.immediate]
11-09 15:32:03.565 D/ACRA    (27047): Building report
11-09 15:32:03.566 D/ACRA    (27047): Starting collectors with priority FIRST
11-09 15:32:03.568 D/ACRA    (27047): Calling collector org.acra.collector.StacktraceCollector
11-09 15:32:03.569 D/ACRA    (27047): Calling collector org.acra.collector.LogCatCollector
11-09 15:32:03.570 D/ACRA    (27047): Collector org.acra.collector.StacktraceCollector completed
11-09 15:32:03.571 D/ACRA    (27047): Calling collector org.acra.collector.DropBoxCollector
11-09 15:32:03.571 D/ACRA    (27047): Collector org.acra.collector.DropBoxCollector completed
11-09 15:32:03.572 D/ACRA    (27047): Retrieving logcat output (buffer:default)...

App information

App version: 0.17.9 (170999)
Package name: org.jellyfin.androidtv
Build:

{"BOARD":"SEI804DT","BOOTLOADER":"01.01.240418.191735","BRAND":"MagentaTV","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"SEI804DT","DISPLAY":"STTC.220803.001.6390 release-keys","FINGERPRINT":"MagentaTV\/SEI804DT\/SEI804DT:12\/STTC.220803.001\/6390:user\/release-keys","HARDWARE":"amlogic","HOST":"sei-Precision-3640-Tower","ID":"STTC.220803.001","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"SEI Robotics","MODEL":"MagentaTV One (2. Generation)","ODM_SKU":"unknown","PERMISSIONS_REVIEW_REQUIRED":true,"PRODUCT":"SEI804DT","RADIO":"unknown","SKU":"unknown","SOC_MANUFACTURER":"Amlogic","SOC_MODEL":"AMLS905X4","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"release-keys","TIME":1717667156000,"TYPE":"user","UNKNOWN":"unknown","USER":"jenkins","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"","CODENAME":"REL","INCREMENTAL":"6390","MEDIA_PERFORMANCE_CLASS":0,"PREVIEW_SDK_FINGERPRINT":"REL","PREVIEW_SDK_INT":0,"RELEASE":"12","RELEASE_OR_CODENAME":"12","SDK":"31","SDK_INT":31,"SECURITY_PATCH":"2024-04-05"}}

Build config:

{"APPLICATION_ID":"org.jellyfin.androidtv","BUILD_TYPE":"release","DEBUG":false,"DEVELOPMENT":false,"VERSION_CODE":170999,"VERSION_NAME":"0.17.9"}

Device information

Android version: 12
Device brand: MagentaTV
Device product: SEI804DT
Device model: MagentaTV One (2. Generation)

Crash information

Start time: 2024-11-09T15:32:02.438+01:00
Crash time: 2024-11-09T15:32:03.630+01:00

Application version

0.17.9

Where did you install the app from?

Google Play

Device information

MagentaTV One (2. Gen.)

Android version

Android 12

Jellyfin server version

10.10.1

fatexs commented 2 weeks ago

another one https://pastebin.com/GXKjN8aQ

nielsvanvelzen commented 2 weeks ago

Can you try the 0.18 beta and see if this issue still occurs?

fatexs commented 1 week ago

Sorry took a bit verify 0.18.0-beta.3 seems to be fine! I saw no more crashes.

fatexs commented 6 days ago

seems to still happen 0.18 https://pastebin.com/VbMqvSTz https://pastebin.com/xaiLsR0D still happens on 0.18b4 https://pastebin.com/CvZXQVLe

KevinSalmon commented 9 hours ago

Still happen on FireTV with Jellyfin 0.18.0-beta.4

---
client: Jellyfin for Android TV
client_version: 0.18.0-beta.4
client_repository: https://github.com/jellyfin/jellyfin-androidtv
type: crash_report
format: markdown
---
### Logs

***Stack Trace***: 
```log
java.lang.IllegalStateException: Fragment CustomPlaybackOverlayFragment{d0186fe} (41ff886c-0778-4ebc-9440-fb4164ed1ed9) not attached to a context.
    at androidx.fragment.app.Fragment.requireContext(Fragment.java:977)
    at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.lambda$prepareChannelAdapter$11$org-jellyfin-androidtv-ui-playback-CustomPlaybackOverlayFragment(CustomPlaybackOverlayFragment.java:1287)
    at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment$$ExternalSyntheticLambda9.apply(D8$$SyntheticClass:0)
    at org.jellyfin.androidtv.ui.livetv.TvManager.lambda$loadAllChannels$0(TvManager.java:102)
    at org.jellyfin.androidtv.ui.livetv.TvManager$$ExternalSyntheticLambda2.invoke(D8$$SyntheticClass:0)
    at org.jellyfin.androidtv.ui.livetv.TvManagerHelperKt$loadLiveTvChannels$1.invokeSuspend(TvManagerHelper.kt:46)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.internal.DispatchedContinuation.resumeWith(DispatchedContinuation.kt:197)
    at io.ktor.utils.io.internal.CancellableReusableContinuation.resumeWithExceptionContinuationOnly(CancellableReusableContinuation.kt:105)
    at io.ktor.utils.io.internal.CancellableReusableContinuation.access$resumeWithExceptionContinuationOnly(CancellableReusableContinuation.kt:14)
    at io.ktor.utils.io.internal.CancellableReusableContinuation$JobRelation.invoke(CancellableReusableContinuation.kt:125)
    at io.ktor.utils.io.internal.CancellableReusableContinuation$JobRelation.invoke(CancellableReusableContinuation.kt:108)
    at kotlinx.coroutines.InvokeOnCancelling.invoke(JobSupport.kt:1571)
    at kotlinx.coroutines.JobSupport.invokeOnCompletionInternal$kotlinx_coroutines_core(JobSupport.kt:500)
    at kotlinx.coroutines.JobSupport.invokeOnCompletion(JobSupport.kt:452)
    at kotlinx.coroutines.Job$DefaultImpls.invokeOnCompletion$default(Job.kt:313)
    at io.ktor.utils.io.internal.CancellableReusableContinuation$JobRelation.<init>(CancellableReusableContinuation.kt:113)
    at io.ktor.utils.io.internal.CancellableReusableContinuation.parent(CancellableReusableContinuation.kt:59)
    at io.ktor.utils.io.internal.CancellableReusableContinuation.completeSuspendBlock(CancellableReusableContinuation.kt:39)
    at io.ktor.utils.io.ByteBufferChannel.readSuspendImpl(ByteBufferChannel.kt:2239)
    at io.ktor.utils.io.ByteBufferChannel.readSuspend(ByteBufferChannel.kt:2170)
    at io.ktor.utils.io.ByteBufferChannel.readRemainingSuspend(ByteBufferChannel.kt:2093)
    at io.ktor.utils.io.ByteBufferChannel.access$readRemainingSuspend(ByteBufferChannel.kt:23)
    at io.ktor.utils.io.ByteBufferChannel$readRemainingSuspend$1.invokeSuspend(Unknown Source:16)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101)
    at android.os.Handler.handleCallback(Handler.java:873)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:211)
    at android.app.ActivityThread.main(ActivityThread.java:6775)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
    Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@4bd317b, Dispatchers.Main.immediate]

Logcat:

11-24 12:30:09.424 I/org.jellyfin.sdk.api.ktor.KtorClient( 2204): GET https://***/MediaSegments/19b15b37-bee7-7e0b-de17-68b56855312f?includeSegmentTypes=Intro&includeSegmentTypes=Outro&includeSegmentTypes=Preview&includeSegmentTypes=Recap&includeSegmentTypes=Commercial
11-24 12:30:09.515 I/ReportingHelper$reportStart( 2204): Reporting FR| 13EME RUE FHD playback started at 0
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204): Playback error
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):   androidx.media3.exoplayer.ExoPlaybackException: Source error
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at androidx.media3.exoplayer.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:736)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:706)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at android.os.Handler.dispatchMessage(Handler.java:102)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at android.os.Looper.loop(Looper.java:211)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at android.os.HandlerThread.run(HandlerThread.java:65)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):   Caused by: androidx.media3.exoplayer.source.UnrecognizedInputFormatException: None of the available extractors (FlvExtractor, FlacExtractor, WavExtractor, FragmentedMp4Extractor, Mp4Extractor, AmrExtractor, PsExtractor, OggExtractor, TsExtractor, MatroskaExtractor, AdtsExtractor, Ac3Extractor, Ac4Extractor, Mp3Extractor, AviExtractor, JpegExtractor, PngExtractor, WebpExtractor, BmpExtractor, HeifExtractor, AvifExtractor) could read the stream.{contentIsMalformed=false, dataType=1}
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at androidx.media3.exoplayer.source.BundledExtractorsAdapter.init(BundledExtractorsAdapter.java:108)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at androidx.media3.exoplayer.source.ProgressiveMediaPeriod$ExtractingLoadable.load(ProgressiveMediaPeriod.java:1060)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at androidx.media3.exoplayer.upstream.Loader$LoadTask.run(Loader.java:421)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
11-24 12:30:09.516 E/ExoPlayerImplInternal( 2204):       at java.lang.Thread.run(Thread.java:764)
11-24 12:30:09.518 I/org.jellyfin.sdk.api.ktor.KtorClient( 2204): POST https://***/Sessions/Playing
11-24 12:30:09.542 E/VideoManager( 2204): ***** Got error from player
11-24 12:30:09.544 E/PlaybackController( 2204): Playback error - Échec du chargement de la vidéo
11-24 12:30:09.550 I/PlaybackController( 2204): Player error encountered - retrying
11-24 12:30:09.555 I/ReportingHelper$reportStopped( 2204): Reporting FR| 13EME RUE FHD playback stopped at 0
11-24 12:30:09.557 I/org.jellyfin.sdk.api.ktor.KtorClient( 2204): POST https://***/Sessions/Playing/Stopped
11-24 12:30:09.575 I/PlaybackController( 2204): Play called from state: IDLE with pos: 0 and sub index: null
11-24 12:30:09.591 I/org.jellyfin.sdk.api.ktor.KtorClient( 2204): GET https://***/LiveTv/Channels/19b15b37-bee7-7e0b-de17-68b56855312f
11-24 12:30:09.608 I/PlaybackController( 2204): Using internal player for Live TV
11-24 12:30:09.776 I/jellyfin-apiclient( 2204): Response received from: https://***/Items/19b15b37-bee7-7e0b-de17-68b56855312f/PlaybackInfo?format=json
11-24 12:30:09.878 I/jellyfin-apiclient( 2204): Response received from: https://***/LiveStreams/Open?format=json
11-24 12:30:09.881 E/PlaybackController( 2204): Error getting playback stream info
11-24 12:30:09.881 E/PlaybackController( 2204): java.lang.IllegalArgumentException: handler
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.BaseApiClient.GetApiUrl(BaseApiClient.java:364)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.BaseApiClient.GetApiUrl(BaseApiClient.java:302)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.androidtv.ui.playback.GetPlaybackInfoResponse.onResponseInternal(GetPlaybackInfoResponse.java:165)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.androidtv.ui.playback.GetPlaybackInfoResponse.access$000(GetPlaybackInfoResponse.java:21)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.androidtv.ui.playback.GetPlaybackInfoResponse$1.onResponse(GetPlaybackInfoResponse.java:67)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.androidtv.ui.playback.GetPlaybackInfoResponse$1.onResponse(GetPlaybackInfoResponse.java:61)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.SerializedResponse.onSerializedResponse(SerializedResponse.java:46)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.SerializedResponse.onResponse(SerializedResponse.java:39)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.SerializedResponse.onResponse(SerializedResponse.java:6)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.ApiClientRequestListener.onResponse(ApiClientRequestListener.java:21)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.ApiClientRequestListener.onResponse(ApiClientRequestListener.java:5)
11-24 12:30:09.881 E/PlaybackController( 2204):     at org.jellyfin.apiclient.interaction.VolleyResponseListener.onResponse(VolleyResponseListener.java:22)
11-24 12:30:09.881 E/PlaybackController( 2204):     at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:82)
11-24 12:30:09.881 E/PlaybackController( 2204):     at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:29)
11-24 12:30:09.881 E/PlaybackController( 2204):     at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102)
11-24 12:30:09.881 E/PlaybackController( 2204):     at android.os.Handler.handleCallback(Handler.java:873)
11-24 12:30:09.881 E/PlaybackController( 2204):     at android.os.Handler.dispatchMessage(Handler.java:99)
11-24 12:30:09.881 E/PlaybackController( 2204):     at android.os.Looper.loop(Looper.java:211)
11-24 12:30:09.881 E/PlaybackController( 2204):     at android.app.ActivityThread.main(ActivityThread.java:6775)
11-24 12:30:09.881 E/PlaybackController( 2204):     at java.lang.reflect.Method.invoke(Native Method)
11-24 12:30:09.881 E/PlaybackController( 2204):     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
11-24 12:30:09.881 E/PlaybackController( 2204):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
11-24 12:30:09.903 I/ExoPlayerImpl( 2204): Release 4484c9b [AndroidXMedia3/1.4.1] [sheldonp, AFTSSS, Amazon, 28] [media3.common, media3.exoplayer, media3.decoder, media3.session, media3.ui, media3.datasource, media3.extractor]
11-24 12:30:10.017 I/org.jellyfin.sdk.api.ktor.KtorClient( 2204): GET https://***/Items/19b15b37-bee7-7e0b-de17-68b56855312f
11-24 12:30:10.350 W/lyfin.androidt( 2204): Accessing hidden method Landroid/view/RenderNode;->getScaleX()F (dark greylist, linking)
11-24 12:30:10.402 W/lyfin.androidt( 2204): Accessing hidden method Landroid/view/RenderNode;->getScaleX()F (dark greylist, linking)
11-24 12:30:10.415 W/View    ( 2204): requestLayout() improperly called by android.widget.TextView{33fe432 V.ED..... ......ID 120,40-1430,126 #7f0b02e8 app:id/title} during layout: running second layout pass
11-24 12:30:10.415 W/View    ( 2204): requestLayout() improperly called by android.widget.LinearLayout{a679583 V.E...... ......ID 120,132-1500,172 #7f0b01ab app:id/infoRow} during layout: running second layout pass
11-24 12:30:10.415 W/View    ( 2204): requestLayout() improperly called by org.jellyfin.androidtv.ui.browsing.composable.inforow.BaseItemInfoRowView{3fac300 V.E...... ......I. 0,0-0,0} during layout: running second layout pass
11-24 12:30:10.560 W/lyfin.androidt( 2204): Accessing hidden method Landroid/view/RenderNode;->getScaleX()F (dark greylist, linking)
11-24 12:30:10.647 W/View    ( 2204): requestLayout() improperly called by android.widget.LinearLayout{a679583 V.E...... ......ID 120,132-1500,172 #7f0b01ab app:id/infoRow} during layout: running second layout pass
11-24 12:30:10.647 W/View    ( 2204): requestLayout() improperly called by android.widget.TextView{33fe432 V.ED..... ......ID 120,40-1430,126 #7f0b02e8 app:id/title} during layout: running second layout pass
11-24 12:30:10.647 W/View    ( 2204): requestLayout() improperly called by org.jellyfin.androidtv.ui.browsing.composable.inforow.BaseItemInfoRowView{afab3d9 V.E...... ......I. 0,0-0,0} during layout: running second layout pass
11-24 12:30:10.717 W/lyfin.androidt( 2204): Accessing hidden method Landroid/view/RenderNode;->getScaleX()F (dark greylist, linking)
11-24 12:30:10.812 E/ACRA    ( 2204): ACRA caught a IllegalStateException for org.jellyfin.androidtv
11-24 12:30:10.812 E/ACRA    ( 2204): java.lang.IllegalStateException: Fragment CustomPlaybackOverlayFragment{d0186fe} (41ff886c-0778-4ebc-9440-fb4164ed1ed9) not attached to a context.
11-24 12:30:10.812 E/ACRA    ( 2204):   at androidx.fragment.app.Fragment.requireContext(Fragment.java:977)
11-24 12:30:10.812 E/ACRA    ( 2204):   at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment.lambda$prepareChannelAdapter$11$org-jellyfin-androidtv-ui-playback-CustomPlaybackOverlayFragment(CustomPlaybackOverlayFragment.java:1287)
11-24 12:30:10.812 E/ACRA    ( 2204):   at org.jellyfin.androidtv.ui.playback.CustomPlaybackOverlayFragment$$ExternalSyntheticLambda9.apply(D8$$SyntheticClass:0)
11-24 12:30:10.812 E/ACRA    ( 2204):   at org.jellyfin.androidtv.ui.livetv.TvManager.lambda$loadAllChannels$0(TvManager.java:102)
11-24 12:30:10.812 E/ACRA    ( 2204):   at org.jellyfin.androidtv.ui.livetv.TvManager$$ExternalSyntheticLambda2.invoke(D8$$SyntheticClass:0)
11-24 12:30:10.812 E/ACRA    ( 2204):   at org.jellyfin.androidtv.ui.livetv.TvManagerHelperKt$loadLiveTvChannels$1.invokeSuspend(TvManagerHelper.kt:46)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlinx.coroutines.internal.DispatchedContinuation.resumeWith(DispatchedContinuation.kt:197)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.internal.CancellableReusableContinuation.resumeWithExceptionContinuationOnly(CancellableReusableContinuation.kt:105)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.internal.CancellableReusableContinuation.access$resumeWithExceptionContinuationOnly(CancellableReusableContinuation.kt:14)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.internal.CancellableReusableContinuation$JobRelation.invoke(CancellableReusableContinuation.kt:125)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.internal.CancellableReusableContinuation$JobRelation.invoke(CancellableReusableContinuation.kt:108)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlinx.coroutines.InvokeOnCancelling.invoke(JobSupport.kt:1571)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlinx.coroutines.JobSupport.invokeOnCompletionInternal$kotlinx_coroutines_core(JobSupport.kt:500)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlinx.coroutines.JobSupport.invokeOnCompletion(JobSupport.kt:452)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlinx.coroutines.Job$DefaultImpls.invokeOnCompletion$default(Job.kt:313)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.internal.CancellableReusableContinuation$JobRelation.<init>(CancellableReusableContinuation.kt:113)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.internal.CancellableReusableContinuation.parent(CancellableReusableContinuation.kt:59)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.internal.CancellableReusableContinuation.completeSuspendBlock(CancellableReusableContinuation.kt:39)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.ByteBufferChannel.readSuspendImpl(ByteBufferChannel.kt:2239)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.ByteBufferChannel.readSuspend(ByteBufferChannel.kt:2170)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.ByteBufferChannel.readRemainingSuspend(ByteBufferChannel.kt:2093)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.ByteBufferChannel.access$readRemainingSuspend(ByteBufferChannel.kt:23)
11-24 12:30:10.812 E/ACRA    ( 2204):   at io.ktor.utils.io.ByteBufferChannel$readRemainingSuspend$1.invokeSuspend(Unknown Source:16)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
11-24 12:30:10.812 E/ACRA    ( 2204):   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:101)
11-24 12:30:10.812 E/ACRA    ( 2204):   at android.os.Handler.handleCallback(Handler.java:873)
11-24 12:30:10.812 E/ACRA    ( 2204):   at android.os.Handler.dispatchMessage(Handler.java:99)
11-24 12:30:10.812 E/ACRA    ( 2204):   at android.os.Looper.loop(Looper.java:211)
11-24 12:30:10.812 E/ACRA    ( 2204):   at android.app.ActivityThread.main(ActivityThread.java:6775)
11-24 12:30:10.812 E/ACRA    ( 2204):   at java.lang.reflect.Method.invoke(Native Method)
11-24 12:30:10.812 E/ACRA    ( 2204):   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
11-24 12:30:10.812 E/ACRA    ( 2204):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
11-24 12:30:10.812 E/ACRA    ( 2204):   Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@4bd317b, Dispatchers.Main.immediate]

App information

App version: 0.18.0-beta.4 (180004)
Package name: org.jellyfin.androidtv
Build:

{"BOARD":"sheldonp","BOOTLOADER":"unknown","BRAND":"Amazon","CPU_ABI":"armeabi-v7a","CPU_ABI2":"armeabi","DEVICE":"sheldonp","DISPLAY":"PS7685.4486N","FINGERPRINT":"Amazon\/sheldonp\/sheldonp:9\/PS7685.4486N\/0031642977792:user\/amz-p,release-keys","HARDWARE":"mt8695","HOST":"i3-ri-14-use1a-b-16-04-fos-159","ID":"PS7685.4486N","IS_DEBUGGABLE":false,"IS_EMULATOR":false,"MANUFACTURER":"Amazon","MODEL":"AFTSSS","PERMISSIONS_REVIEW_REQUIRED":false,"PRODUCT":"sheldonp","RADIO":"unknown","SUPPORTED_32_BIT_ABIS":["armeabi-v7a","armeabi"],"SUPPORTED_64_BIT_ABIS":[],"SUPPORTED_ABIS":["armeabi-v7a","armeabi"],"TAGS":"amz-p,release-keys","TIME":1730254366000,"TYPE":"user","UNKNOWN":"unknown","USER":"build","VERSION":{"ACTIVE_CODENAMES":[],"BASE_OS":"PPR1.180610.009","CODENAME":"REL","FIRST_SDK_INT":28,"INCREMENTAL":"0031642977924","PREVIEW_SDK_INT":0,"RELEASE":"9","RESOURCES_SDK_INT":28,"SDK":"28","SDK_INT":28,"SECURITY_PATCH":"2024-08-01"}}

Build config:

{"APPLICATION_ID":"org.jellyfin.androidtv","BUILD_TYPE":"release","DEBUG":false,"DEVELOPMENT":false,"VERSION_CODE":180004,"VERSION_NAME":"0.18.0-beta.4"}

Device information

Android version: 9
Device brand: Amazon
Device product: sheldonp
Device model: AFTSSS

Crash information

Start time: 2024-11-24T12:26:20.440+01:00
Crash time: 2024-11-24T12:30:10.929+01:00