Open defagos opened 4 years ago
This issue follows from current Letterbox behaviour as well as Play implementation. We should improve both:
Currently, playing the same content as already being played is a no-op. We should adopt a behaviour to watch the -switch
method does, more precisely:
nil
), do not do anything.nil
), do not do anything.Maybe the last two cases can be reduced to a simple -switch
method call
In Play, we should simplify our MediaPlayerViewController
API by removing creation for a URN or media, only retaining creation with a controller provided externally.
This way, depending on what is being played in the service controller and what the user wants to play, we can reuse the service controller with the updated Letterbox logic above and pass it to the media player view controller for display. We can then probably eliminate all original...
-based ugly code and simplify our implementation of -playURN
or -playMedia
in Play.
This behavior exists since a long time, I propose we fix it for 3.1.1.
The same issue affects livestreams, for all platforms (including CarPlay where it can be a bit more annoying):
When already playing a segment, tapping on its full-length elsewhere in the app restarts it at the beginning. This should not be the case (the content is namely the same).
Issue type
Incorrect behavior
Environment information
Reproducibility
Always reproducible
Code sample
Steps to reproduce
Note that this issue is a bit more visible with 3.1.0 and program segments: Because you don't need background video playback to be enabled (this is audio after all), playing a livestream and tapping on the same item on the live tab will move the playback position to the live edge.