App crashes when trying to enable streaming on mobile data
### Checklist
- [X] I have used the search function for [**OPEN**](https://github.com/XilinJia/Podcini/issues) issues to see if someone else has already submitted the same bug report.
- [X] I have **also** used the search function for [**CLOSED**](https://github.com/XilinJia/podcini/issues?q=is%3Aissue+is%3Aclosed) issues to see if the problem is already solved and just waiting to be released.
- [X] I will describe the problem with as much detail as possible.
- [X] If the bug only to occurs with a certain podcast, I will include the URL of that podcast.
### App version
7.2.3
### Where did you get the app from
F-Droid
### Android version
13
### Device model
_No response_
### First occurred
since 7.2.0
### Steps to reproduce
1. Settings
2. Download
3. Metered network settings (note: this is currently translated as "Impostazioni di rete misurate" in italian, should be "Impostazioni utilizzo dati mobili"
4. Select Streaming
5. OK
Alternative: click "forever" on the notification to allow streaming on mobile data when starting a stream.
### Expected behaviour
Streaming on mobile data becomes allowed, without requiring me to tap the notification every time I start a streaming
### Current behaviour
Chrash.
Just tapping on the notification avoiding the forever button works to allow temporary streaming.
### Logs
## Environment
Android version: 13
OS version: 4.14.186-27095505
Podcini version: 7.2.3
Model: SM-A326B
Device: a32x
Product: a32xeea
## Crash info
Time: 13-01-2025 22:12:12
Podcini version: 7.2.3
## StackTrace
```
java.lang.IllegalArgumentException: Unsupported type
at ac.mdiq.podcini.preferences.screens.DownloadsKt$DownloadsPreferencesScreen$5$15.invoke$lambda$1$lambda$0(Downloads.kt:200)
at ac.mdiq.podcini.preferences.screens.DownloadsKt$DownloadsPreferencesScreen$5$15.$r8$lambda$64m5une50iPVk1xa3n5brHKZ2oc(Downloads.kt:0)
at ac.mdiq.podcini.preferences.screens.DownloadsKt$DownloadsPreferencesScreen$5$15$$ExternalSyntheticLambda0.invoke(R8$$SyntheticClass:0)
at androidx.compose.foundation.ClickableNode$clickPointerInput$3.invoke-k-4lQ0M(Clickable.kt:639)
at androidx.compose.foundation.ClickableNode$clickPointerInput$3.invoke(Clickable.kt:633)
at androidx.compose.foundation.gestures.TapGestureDetectorKt$detectTapAndPress$2$1.invokeSuspend(TapGestureDetector.kt:255)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTaskKt.resume(DispatchedTask.kt:175)
at kotlinx.coroutines.DispatchedTaskKt.dispatch(DispatchedTask.kt:164)
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 androidx.compose.ui.input.pointer.SuspendingPointerInputModifierNodeImpl$PointerEventHandlerCoroutine.offerPointerEvent(SuspendingPointerInputFilter.kt:719)
at androidx.compose.ui.input.pointer.SuspendingPointerInputModifierNodeImpl.dispatchPointerEvent(SuspendingPointerInputFilter.kt:598)
at androidx.compose.ui.input.pointer.SuspendingPointerInputModifierNodeImpl.onPointerEvent-H0pRuoY(SuspendingPointerInputFilter.kt:620)
at androidx.compose.foundation.AbstractClickableNode.onPointerEvent-H0pRuoY(Clickable.kt:1044)
at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:387)
at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:373)
at androidx.compose.ui.input.pointer.NodeParent.dispatchMainEventPass(HitPathTracker.kt:229)
at androidx.compose.ui.input.pointer.HitPathTracker.dispatchChanges(HitPathTracker.kt:144)
at androidx.compose.ui.input.pointer.PointerInputEventProcessor.process-BIzXfog(PointerInputEventProcessor.kt:120)
at androidx.compose.ui.platform.AndroidComposeView.sendMotionEvent-8iAsVTc(AndroidComposeView.android.kt:1994)
at androidx.compose.ui.platform.AndroidComposeView.handleMotionEvent-8iAsVTc(AndroidComposeView.android.kt:1945)
at androidx.compose.ui.platform.AndroidComposeView.dispatchTouchEvent(AndroidComposeView.android.kt:1829)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3316)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2990)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3316)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2990)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3316)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2990)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3316)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2990)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:1116)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1971)
at android.app.Dialog.dispatchTouchEvent(Dialog.java:1332)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:1074)
at android.view.View.dispatchPointerEvent(View.java:15803)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:8153)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:7877)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7213)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:7270)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:7236)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:7434)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:7244)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:7491)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7217)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:7270)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:7236)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:7244)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7217)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:10788)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:10676)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:10632)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:10926)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:285)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loopOnce(Looper.java:186)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8762)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:604)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@d035065, androidx.compose.runtime.BroadcastFrameClock@6313a, StandaloneCoroutine{Cancelling}@27ed1eb, AndroidUiDispatcher@ab72b48]
```
2 条评论