Automattic / pocket-casts-android

Pocket Casts Android 🎧
https://forums.pocketcasts.com
Mozilla Public License 2.0
2.58k stars 223 forks source link

Incorrect multiple device sync when an episode is left playing on the last device, completed on another and the app is restarted #1649

Closed ashiagr closed 5 months ago

ashiagr commented 10 months ago

Description

The issue was reported for sync between Automotive and the phone app.

When an episode is left playing on the Automotive app, and completed on the phone app, followed by playing another episode on phone app, then on restarting the Automotive app, the last playing episode on the Automotive app continues to play from the last play position instead of switching to the last synced episode from the phone app.

Moreover, it gets added to the up-next even though it was completed on another device.

This usually happens because if an episode is currently playing on the device, then episode playedUpto is not updated and the playing status is marked as unsynced.

Suggested fix: Add a setting to delay playback on boot until server sync or x secs so that the correct episode is played from its last synced position on another device.

Step-by-step reproduction instructions

  1. Play an episode (Episode A) in Automotive app
  2. Open phone app and force sync from the Developer settings
  3. Complete the above playing episode (Episode A) in the phone app
  4. Play another episode (Episode B) on the phone app
  5. Force sync from the Developer settings
  6. Restart the automotive app (this force refreshes the app)
  7. Notice that the episode (Episode A) continues to play from its last played position even though it was completed on the phone. It does not switch to Episode B which was the last synced episode from the phone app.
  8. Refresh the app from Settings in the automotive app
  9. Open the phone app
  10. Force refresh the app
  11. Notice that episode (Episode A) is added to the upnext queue even though it was completed on the phone earlier

According to the user report (7481359-zd-a8c), at step 7, Episode A seeks to Episode B last played up to the position. However, I wasn't able to reproduce it.

Screenshots or screen recording

https://github.com/Automattic/pocket-casts-android/assets/1405144/612d6874-1849-437c-9155-1315466fde1a

Did you search for existing bug reports?

Device, Operating system, and Pocket Casts app version

7481359-zd-a8c

igotdes commented 10 months ago

@ashiagr The user in #7481359-zen has shared a screenshot:

Screenshot ![7481359-zen](https://github.com/Automattic/pocket-casts-android/assets/74066241/dc22944f-7f0f-462e-9cc4-b89570ddf42a)

Their description of what happened is as follows:

In the attached image the S4E6 The Faith of Flowers is where the car started playing (a previously finished episode). Current episode was S4E12 Beyond the Real. Based on the "time remaining" you can see it synced that episode to the correct spot, but did not transfer over to playing that one

joashrajin commented 8 months ago

@ashiagr does this sound related?

I use the AAOS version in my Volvo and iOS on my iPhone. I start a podcast in the car and want to pick up where I left off on my iPhone, and 99% of the time it seems as though the iPhone does not receive the sync point from the AAOS. I even go in and manually refresh in the volvo before turning it off, and then manually refresh on the iOS before starting. and the episode will show as though it has never been started.

7768194-zd-a8c

joashrajin commented 8 months ago

Another one relating to the above comment: 7768201-zd-a8c

joashrajin commented 7 months ago

love using your app, but same problem for me using AAOS in a Volvo XC40. Any updates in this regard? Thanks!

https://forums.pocketcasts.com/forums/topic/pocketcasts-on-android-automotive-aaos-does-not-sync-reliably/?view=all#post-3268

joashrajin commented 7 months ago

https://forums.pocketcasts.com/forums/topic/pocketcasts-on-android-automotive-aaos-does-not-sync-reliably/?view=all#post-3282

joashrajin commented 7 months ago

@ashiagr do we have any recommendations or updates for this?

igotdes commented 6 months ago

https://forums.pocketcasts.com/forums/topic/pocketcasts-on-android-automotive-aaos-does-not-sync-reliably/?view=all#post-3565

joashrajin commented 5 months ago

8218789-zd-a8c

Any news about this issue? I’ve seen there have been updates to the app recently, but I don’t think they addressed this. The AAOS app remembers its own last playback position, but it doesn’t sync to my actual last position (or even the last played podcast) from the phone or desktop. If there was at least a manual “sync button” in the settings that you could push before starting playback, that could help. Or, like the OP said, always sync before playing anything, even if it causes some delay when starting up.Reliable cross device/platform syncing is the number one Pocket Casts feature that convinced me it’s worth the hefty price, so without it the usefullness of the app is severely limited to me.