- Добавить анимацию какую-нибудь, шобы +- как в ютубе было. Типа "А" такая по середине и после инициализации всего говна уплывала влево и появлялся текст "анилибрия".
- Взять готовую логику из мобилки и вынести в че-то типа интерактора, к которому смогут цепляться и все нужные модули.
- Должны быть доступны все способы авторизации + новый способ по коду.
- Подумать на счет целесообразности авторизации через вк, т.к. на телеке это будет ебучий ад. Да и с обычными формами тоже, но в вебвью это рили пиздец будет зашквар.
- Приоритетным сделать вход по коду. Нужно будет на сайте, в апи и в мобилке добавить раздел "устройства".
- Для телевизора нужно генерить 6-ти значный код.
- На сайте или мобилке авторизованный пользователь должен ввести этот код.
- ТВ автоматически логинится, мб постоянно опрашивая сервер или по вебсокету, но скорее всего постоянный опрос.
- Экран авторизации несчадно скомуниздить из других аппок, скорее всего это будет херня с правым меню/дровером с пунктами авторизации, а слева будет хз че-то типа какой-то иллюстрации или че там по гайдлайнам. Мб написать что-то о плюсах авторизации.
- Рассмотреть возможность заюзать фрагмент, вместо активити. Посмотреть как реализовано в других приложениях в кейсах, когда ты уже пользуешься аппкой и решил зарегаться.
- Попробовать гугловскую рекомендацию - связать пункты меню и строки с релизами.
- Собсна пукты
- Общая лента
- Обновления в избранном (если авторизован)
- Продолжить просмотр
- Расписание
- Каталог
- Ютубчик
- История
- Авторизация (если не авторизован)
- Настройки
- Вроде как меню должно быть без иконок
- Фон ебануть градиентом, по типу как сделано в гуглплее. Скорее всего градиент придётся делать каким-то хитровыебанным
- Цвета брать из палитры постера. Вычисленные цвета кешировать.
- Возможно угл градиента влияет на видимые косячные переходы цветов. А возможно нужно просто поиграться с параметрами затенения.
- Градиент должен меняться плавно при переключении карточки. Сделать дебаунс, чтобы пользователи не словили приход.
- Карточки сделать чуть больше, чем обычно. Так-же нужно увеличить расстояние между ними, по типу как сделано в кинопоиске. Иначе скейл выглядит косячным.
- Внутри карточки никакой текстовой информации. Вместо этого вынести весь текст под список карточек как статичный row. Так сделано в megogo и это пиздато.
- Transition shared-view не в приоритете, т.к. как обычно может сожрать дохера времени и не дать никакого выхлопа.
- Навигация происходит в соответствии с типом карточки. Релиз - значит херачим в релиз, ютуб - открываем ютабчик, еще че-то - открываем еще че-то.
- Список релизов и ютаба, с пагинацией, хоть гугл и говорил, шо так делать не нужно.
- Сортировка по дате, самые свежи сначала.
- Нужно затестить как работает в случае, если карточки разного размера, т.к. ютабчик и релизы имеют разные обложки.
- Список избранных релизов
- Можно выбрать сортировку по дате релиза или по дате добавления в избранное
- Тогл переключения сортировки скорее всего должен находиться справа вконце экрана от тайтла.
- Идея в том, что пользователь мог прервать просмотр серии и в таком случае можно будет запустить серию с прерванного момента. Либо если какой-то релиз обновился то высветится предложение просмотреть новую серию.
- Список релизов, в которых пользователь запускал плеер
- В случае если происходит обновление релиза, то для просмотра должна быть предложена следующая серия.
- Сортировка двойная, но в общем логика такая сортируется по дате обновления релиза и по дате просмотра серии, самые свежие вначале.
- Релизы должны быть уникальны, т.е. 1 серия = 1 релиз, без хуйни, в принципе и так понятно должно быть.
- !!! Синхронизация с сервером, если возможно
- Список релизов запланированных на текущий день по московскому времени.
- Если локальное время пользователя превышает московское, то юзеру должно быть пояснено, что берется именно московское время.
- Должна быть кнопка, по которой можно будет перейти к расписанию на всю неделю.
- Если на текущий день расписания нет, то пункт не должен исчезнуть, но должна остаться кнопка для перехода к расписанию на неделю.
- Список релизов отсоритировано согласно фильтру.
- !!! РАЗДЕЛ ОБШИРНЫЙ, НУЖНО БУДЕТ ДОПОЛНЯТЬ !!!
- Список ютуб роликов.
- Сортировка по дате, без выебонов.
- Рассмотреть вариант отображения стримов. Запланированных или актуальных.
- Так-же рассмотреть вариант отображения премьер.
- Добавление несколько ютуб каналов (пушо например если основной либрийски заблочат, то резервный будет функционировать)
- Список открытых релизов.
- Сортируется по дате открытия.
- Релизы уникальны.
- !!! Синхронизация с сервером, если возможно
- Пункт доступен только если пользователь не залогинен
- Открывается экран авторизации, который скорее всего будет боковой хуйнеё типа диалога, а мб и нет. Нужно смотреть решать.
- Пока неизвестно че может понадобиться настраивать на телеке.
- Отказаться от стандратного вида Detail LeanBack, заюзать концепт дизайна. Так-же постер большой, возможно только с левой стороны.
- Градиент на фоне возможно из двух цветов. В общем поиграться, чтобы выглядело четко.
- Основные действия должны быть доступны в первую очередь, без лишних кликов.
- Если делать по концепту, то нужно будет устанавливать фокус на кнопке "Play".
- Список кнопок и их назначение
- Продолжить
- Смотреть
- Веб-плеер
- "Счетчик избранного" - отображает цифру избранного и иконочку. Если выбрано, то подсвечивает красным, если нет, то обычным цветом текста.
- Русское и английское название должно быть в две строки. Русское большим шрифтом, английское меньшим.
- Если описание будет слишком длинное, то его нужно обрезать.
- Параметры релиза, каждый параметр с новой строки. Обыграть название и значение разными стилями текста
- Год
- Голоса - список ников через запятую.
- Тип
- Состояние
- Жанр - список жанров в через запятую, либо горизонтальным списком элементов
- Расписание - скорее всего будет удобнее/практичнее выводить текст "Релиз выходит каждую пятницу".
- И нужно выводить дополнительное пояснение, скорее всего чуть меньшим текстом.
- Так-же нужно добавить возможность перехода к расписанию релизов.
- Нужно отображать "связанные релизы", сезоны, овы, оны и т.д.
- Сейчас этого нет в апи.
- Лучше это сделать на стороне апи, чтобы приходил именно список связанных релизов.
- Возможно можно было бы добавить отображение "похожих" релизов, но пока этого ни в каком видео нигде не существует и не ясен алгоритм подбора таких релизов. Можно по классике, а можно как нетфликс))0
- Комментариев не будет, по крайней мере в первое время. Т.к. комменты вк как-то сильно уж по уебански лягут под концепцию дизайна андроид тв.
- Список кнопок
- Продолжить - открывает плеер с последнего просмотренного момента. Появляется только если пользователь уже смотрел серию.
- Смотреть - открывает плеер с первой серии.
- Веб-плеер - открывает вебплеер. Нужно еще посмотреть как оно работает, если как кусок говна, то не добавлять.
- Счетчик избранного - добавляет/убирает релиз из избранного.
- Если нет серий в онлайн плеере, то не отображать кнопки "Смотреть" и "Продолжить"
- Если нет вебплеера, то не отображать кнопку "веб плеер"
- Параметры релиза
- Жанр - посмотреть как оно будет работать на телевизоре, если дать возможность перейти по выбранному жанру. Мб будет проблема с навигацией.
- Описание
- Если обрезано, то можно его можно выбрать.
- При клике по выбранному описанию открывается экран с детальным описанием релиза.
- Торренты и скачивание серий
- Нужно рассмотреть варианты, где и как можно разместить. Если ниче в голову не придёт, то придётся отказаться от этой затеи.
- Расписание
- Зависит от выбранной реализации, пока-что не очень понятно че каво.
- Если можно будет выбрать день недели, то по клику на него, должно открыться расписание со скроллом до выбранного дня недели.
- Если будет кнопка перехода в расписание, то при клике должно просто переходить в расписание.
- Юзеру всегда должен быть доступен интерфейс, вне зависимости от состояния загрузки или еще чего.
- Во время воспроизведения интерфейс должен быть скрыт.
- Не должно быть режима PIP - это пиздец как не удобно на android tv. Вот внатуре говняк, там целая головоломка как закрыть воспроизводящийся видос. А прикиньте там че-то кринжовое, уфф...
- Доступные кнопки
- Плей/Пауза
- Следующая серия
- Предыдущая серия
- Перемотка вперёд +10сек
- Перемотка назад -10сек
- Качество
- Скорость
- Соотношение сторон
- Список серий
- Должно отображаться только русское название и какая-нибудь информация о том, какая серия воспроизводится.
- Основные кнопки управления должны располагаться горизонтально по середине экрана, их порядок от левого края
- Предыдущая серия
- Перемотка назад
- Плей/Пауза
- Перемотка вперёд
- Следующая серия
- Второстепенные кнопки управления должны располагаться горизонтально по середине под бегунком прогрессбара, их порядок от левого края:
- Список серий
- Скорость воспроизведения
- Качество
- Соотношение сторон
- Временной прогресс должен быть где-то присран, чтобы выглядел не слишком паршиво. Скорее всего тоже под прогрессбаром.
- При форматировании времени учесть, что бывают видео длиной больше одного часа
- При переключении серии, если она уже была просмотрена, то предложить юзеру либо продолжить с последнего момента, либо с самого начала.
- Сделать возможность открыть релиз из плеера, т.к. плеер можно октрыть из "продолжить просмотр" и т.д. и юзерую было бы удобно жать возможность октрыть релиз, а не искать его через хз какие ебеня.
- Как можно скрыть интерфейс
- Автоматически скрывается после 3-5сек бездействия. Но тут нужно подумать, может и не надо.
- Вручную убрать фокус со всех кнопок, как сделано в ютубе
- При нажатии на кнопку "назад"
- При открытом меню, интерфейс не должен скрываться
- Работа меню
- При открыти должно быть выбрано текущее значение, если это возможно
- При выборе значния, оно должно примениться.
- После выбора значения или по клику назад, меню должно закрыться.
- При появлении интерфейса, фокус должен быть установлен на кнопке Плей/Пауза
- Работа кнопок
- Плей/Пауза - очевидно. Если серия (закончена и автопереключение серии выключено) или (это последняя серия), то на кнопке должен отображаться значок "начать заново".
- Предыдущая/Следующая серия - переключает серию назад/вперёд. Не активна, если серия первая или последняя.
- Перемотка назад/вперёд - перематывает назад/вперёд на 10 сек. Время пеермотки можно настроить.
- Список серий - открывает боковое меню со списком серий.
- Скорость воспроизведения - открывает боковое меню скорости вопроизвдения.
- Качество - открывает боковое меню качества серии.
- Соотношение сторон - при клике меняется соотношение сторон, без дополнительного меню.
- Оптимально - впихнуть видео без обрезки
- Обрезать - впихнуть видео во весь экран, обрезав края
- Растянуть - растянуть во весь экран, никогда не понимал этого дерьма
- При выходе с плеере или при переключении серии, должен запоминаться последний момент.
- Нужно быть аккуратным с тем, что запоминается конец серии при повторном открытии серии автоматически перейдёт к последней метки времени и получится факап.
- Как вариант при запуске серии делать проверку, что серия закончена и автоматически воспроизводить с начала или показывать кнопку "начать заново" (выше в требованиях это упоминалось)
- У каждой серии должна быть информация о том, на каком моменте она остановлена
- Варианты скорости: 0.25, 0.5, 0.75, Обычная (1.0), 1.25, 1.5, 1.75, 2.0
- Если у серии какого-то качества, то оно не должно отображаться в меню.
- Варианты: 480p, 720p, 1080p