I've been using Cast quite some time, and at some point this bug got introduced. Don't remember when, and should've reported immmediately, but alas.
Steps: connect to cast from player view, hit the play button.
What is expected: start playback on cast device.
What actually happens: playback doesn't start. Notification on Android going crazy. Please see this video (WeTransfer with 22 MB webm).
This happens quite regularly/systematically, so guess it can be reproduced. Doesn't seem to happen when casting (with any app) was just used, rather, only when nothing's been casted for some time. Don't know if the stack trace below is actually relevant to this case.
_Not sure shy AntennaPod is providing two different version info here... I'm actually on Android 7.1.2 w/ AntennaPod 1.8.1 - maybe b/c I enabled developer tools?_
[ Environment ]
Android version: 7.1.2
OS version: 3.4.0-perf-g7c668d5
AntennaPod version: 1.8.1
Model: FP2
Device: FP2
Product: FP2
[ Environment ]
Android version: 6.0.1
OS version: 3.4.0-perf-gcde0e65
AntennaPod version: 1.7.2b
Model: FP2
Device: FP2
Product: FP2
[ StackTrace ]
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getString(int)' on a null object reference
at de.danoeh.antennapod.core.util.playback.Timeline.<init>(Timeline.java:53)
at de.danoeh.antennapod.fragment.ItemFragment.loadInBackground(ItemFragment.java:595)
at de.danoeh.antennapod.fragment.ItemFragment.lambda$zZoO0Jhe3_MmwfJvvjCAMENerGQ(ItemFragment.java)
at de.danoeh.antennapod.fragment.-$$Lambda$ItemFragment$zZoO0Jhe3_MmwfJvvjCAMENerGQ.call(lambda)
at io.reactivex.internal.operators.observable.ObservableFromCallable.subscribeActual(ObservableFromCallable.java:43)
at io.reactivex.Observable.subscribe(Observable.java:12090)
at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:154)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:269)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
Nice to hear that this was already present in 1.8.1. I experienced this 1-2 times in the current develop version and was already wondering if it is caused by the UI overhaul.
Not sure shy AntennaPod is providing two different version info here... I'm actually on Android 7.1.2 w/ AntennaPod 1.8.1 - maybe b/c I enabled developer tools?
That happens when the crash was recorded in an older version of AntennaPod. So the trace is not really relevant anymore.
Would it help if I try to recreate & get a log via adb? Would it harm (for debugging) if in the meantime I update to the 2.0 alpha?
It would even be better if you update to 2.0.0 because then, the line numbers and log output would match the current source code more closely. Version 2.0.0 even has a button for exporting logs, so you do not need adb anymore.
I think I do not need logs from your device, though. When fixing this, I need to reproduce this anyway to see if the fix worked. If you notice a reliable way to reproduce the issue (does not seem to occur every time, right?), I would love to hear.
If you notice a reliable way to reproduce the issue (does not seem to occur every time, right?), I would love to hear.
Have phone not connected to casting device nor playing a podcast for a while, open the player screen from mini-player (previously paused episode), connect to casting device via the button in the app, and (once connected) hit play button in player.
Oh, PS: How long the 'while' ought to be, I don't know. And the above assumes the podcast is downloaded and in the queue.