Основы работают следующим образом: кто-то нажимает на значок, этот код получает идентификатор игрока из нашей базы данных, а затем воспроизводит видео.Все работает, за исключением случаев, когда мы ссылаемся на что-либо в разделе «Youtube фильмы».Каждый раз, когда вы щелкаете фильм, он возвращает недопустимый идентификатор, и при каждом нажатии недопустимый идентификатор меняется на что-то другое.Теперь та же ссылка будет работать в Chrome, но не на мобильном телефоне или Android.
Итак, в итоге, если вы используете приложение в браузере с рабочим столом, не проблема.Если вы используете мобильное приложение или приложение Android, оно возвращает случайные неверные идентификаторы игроков.
interface PlayerObject
abstract class YouTube(val videoUrl: String) : PlayerObject {
fun getCue() = videoUrl.replace("https://www.youtube.com/watch?v=", "")
}
class YouTubeVideo(videoUrl: String, val seekToTime: Int) :
YouTube(videoUrl)
class YouTubeStream(videoUrl: String) : YouTube(videoUrl)
Мы ожидаем те же результаты, что и представление рабочего стола, используя тот же идентификатор.Обратите внимание, что мы также переходим к некоторым частям видео.