Skip to content

Repository files navigation

KinogoATV

KinogoATV — неофициальное нативное приложение-каталог и плеер для Android TV. Интерфейс рассчитан на телевизор, горизонтальный экран и управление обычным пультом без сенсорного ввода.

Текущая опубликованная версия: 0.6.1. Поддерживается Android TV 9 и новее (API 28+). Публичный репозиторий: reziarlleh/KinogoATV.

Независимый проект

KinogoATV не является официальным приложением Kinogo, не аффилирован с администрацией сервиса и не одобрен ею. Проект и его GitHub-репозиторий не хранят и не раздают фильмы, сериалы или видеопотоки. Каталог и описания источников запрашиваются приложением во время работы с выбранного пользователем сетевого сервиса. Названия и товарные знаки принадлежат соответствующим правообладателям.

Возможности

  • Главная лента с серверной сортировкой и фильтрами по подборке, году и стране.
  • Каталог по умолчанию открывает реальные «Новинки» и предлагает объединённый список категорий фильмов и сериалов, серверную сортировку, отдельный выбор направления и совместимые фильтры сайта.
  • Главная, Каталог и Поиск используют шестиколоночную сетку с заблаговременной подгрузкой следующих страниц и предсказуемым перемещением фокуса по D-pad.
  • Текстовый и системный голосовой поиск по каталогу с постраничной дозагрузкой, строкой последних запросов и восстановлением запроса, результатов и выбранного постера после возврата.
  • Компактный стально-бирюзовый интерфейс, постоянное левое меню разделов, понятная подсветка фокуса и навигация D-pad-пультом.
  • Полные описания, рейтинги и доступные сведения о качестве контента.
  • Вход в аккаунт Kinogo и синхронизация серверных закладок: «Смотрю», «Смотрел», «Буду», «Бросил» и независимое «Избранное». История, серия и точная позиция сохраняются локально на ТВ и не синхронизируются с аккаунтом сайта.
  • Регистрация аккаунта через обычную форму сайта: правила принимаются только явным действием, CAPTCHA показывает приложение, а код вводит сам пользователь.
  • Локальная история просмотра с сохранением фильма, источника, озвучки, сезона, серии и точной позиции. Обычный OK открывает карточку; долгий OK позволяет удалить выбранный материал со всеми его сериями либо очистить всю историю, не затрагивая настройки и аккаунт.
  • Единое продолжение просмотра из Главной, Каталога, Поиска, Истории, Закладок и после возврата из плеера: учитывается самая новая активная серия, а в карточке видны сезон, серия и позиция. Любая сохранённая ненулевая позиция остаётся точкой продолжения; нулевой lifecycle-checkpoint её не стирает. После реального окончания карточка показывает последнюю завершённую серию и выбирает следующую, не возвращая пользователя к более старой незавершённой или к S01E01.
  • Проверка доступности встроенных адресов сервиса, автоматический выбор рабочего адреса и ручное добавление актуального HTTPS-зеркала. Ограниченный удалённый список может добавить новые адреса только в карантин — перед использованием они проходят ту же проверку.
  • Источник и нативный/web-режим выбираются перед запуском. В native HUD доступны сезон, серия, озвучка, качество и субтитры; кнопки «Источник» и «Web-плеер» из HUD убраны.
  • Изменяемый источник Cinemar запрашивается для текущего фильма или эпизода при открытии Media3. Для сериала в конце воспроизведения может быть заранее открыт только источник непосредственно следующей серии; массовой загрузки остальных серий нет.
  • Актуальные страницы плеера Cinemar, которые сервис после входа отдаёт на внутреннем runtime-адресе вместо обычного /embed/, распознаются как тот же нативный источник без перехода в web-плеер.
  • Полноэкранный нативный Media3-плеер с единым полупрозрачным HUD, лентой серий, прогресс-баром, индикацией буферизации и графическими кнопками управления.
  • При длительной буферизации или отсутствии прогресса, в том числе у самого конца видео, плеер один раз получает свежий источник и создаёт новую сессию. Та же позиция восстанавливается только для того же фильма или эпизода; сохранённая серия автоматически ищется и в другом доступном источнике/переводе.
  • Настройка «Буфер воспроизведения» позволяет выбрать 5, 10, 15, 20 или 30 секунд (по умолчанию 15); значение реально управляет буфером Media3 и учитывается автовосстановлением.
  • Все совместимые сезоны объединяются в одну очередь Media3. Когда конец текущей серии уже загружен и включён автопереход, ближайшая следующая серия предзагружается в память: 2,5 секунды при запасе буфера 5 секунд и 5 секунд при остальных значениях. Это работает и на границе сезонов, но не создаёт постоянный дисковый кэш видео.
  • Выбранное качество сохраняется для следующих серий. Если точного варианта нет, плеер берёт максимальный доступный не выше заданного, а при его отсутствии — минимальный доступный выше.
  • Переход к следующей серии проходит через границу сезонов; после фильма или последней доступной серии приложение возвращается в карточку материала.
  • Явный полноэкранный web-плеер для совместимых источников, когда пользователь выбирает этот вариант. Его собственное состояние PlayerJS сохраняется в изолированном профиле WebView, поэтому повторное открытие может продолжить выбранный вариант и позицию.
  • Понятные переключатели и выпадающие списки настроек качества, буфера, шага перемотки, субтитров, автоперехода, контрастности и анимаций; все они управляются D-pad. Проверка и автопроверка обновлений собраны в конце экрана Настроек.
  • Проверка обновлений в Настройках через подписанный manifest в Pages/CDN с несколькими транспортными адресами загрузки и GitHub Release fallback, проверка APK и передача системному установщику Android. Pages, CDN и прокси повышают доступность, но зависят от опубликованного GitHub-артефакта; полностью независимый сервер обновлений пока не заявлен. При включённой автопроверке найденная при запуске новая версия показывается отдельным TV-диалогом; после временной сетевой ошибки выполняется одна повторная попытка. Установка всегда требует подтверждения ОС.
  • Кнопка Back возвращает в исходный раздел, а не на Главную; для Поиска сохраняются запрос, выдача и последний активный постер.
  • Подтверждение выхода, защищающее от случайного закрытия приложения лишним нажатием «Назад».
  • Фирменная тёмная плитка Android TV и отдельная launcher-иконка с отметкой ATV.

Управление пультом

Действие Кнопка
Перемещение по меню, карточкам и спискам D-pad
Открыть выбранный элемент OK / Enter
Управлять записью Истории удерживать OK / Enter
Вернуться назад Back
Показать скрытый HUD плеера OK, Up или Down
Перемотать видео Left / Right
Выбрать элемент HUD D-pad + OK
Быстро перейти к серии цифровые кнопки, если они есть на пульте
Воспроизведение, пауза, стоп, предыдущая/следующая серия отдельные media-кнопки, если они есть

При скрытом HUD первое нажатие OK только показывает управление. Нажатия Left и Right сразу перематывают видео и переводят фокус на прогресс-бар для следующих нажатий.

Установка

Подписанный установочный файл текущей версии: KinogoATV-0.6.1-code21.apk. Если GitHub недоступен, тот же проверенный APK можно скачать через GitHub Pages или ghfast. Описание выпуска находится на странице KinogoATV 0.6.1. Размер APK — 6 703 237 bytes; SHA-256 — 2C257AEADA9C5E158A509F78F5109BFD74A597B1DAC9B84F28960ECE104FE569.

  1. Разрешите установку приложений из неизвестных источников на Android TV.
  2. Передайте подписанный APK на телевизор через USB-накопитель, файловый менеджер либо ADB.
  3. Установите APK и запустите плитку KinogoATV.
  4. В разделе «Настройки» выполните проверку адресов сервиса. При необходимости добавьте доступное зеркало вручную.
  5. Вход в аккаунт необязателен для каталога и просмотра, но нужен для синхронизации закладок.

Для обновления поверх установленной версии используется APK с той же подписью:

adb install -r KinogoATV-0.6.1-code21.apk

Обновление также можно проверить в Настройках. Приложение не устанавливает APK скрытно: Android TV отдельно запросит разрешение для этого источника и подтверждение установки. Если установлена более ранняя версия, обновление 0.6.1 можно проверить при запуске либо вручную в Настройках. Во время проверки кнопка остаётся на месте и не отдаёт фокус боковому меню.

Данные пользователя

История, настройки и закладки хранятся в данных приложения. Логин и пароль сохраняются только на телевизоре в зашифрованном виде с ключом Android Keystore и используются для автоматического восстановления сессии.

Приложение получает каталог и источники воспроизведения непосредственно во время работы, поэтому ему требуется подключение к интернету.

Если что-то не загрузилось

  • Каталог недоступен — откройте «Настройки», запустите проверку адресов и выберите рабочий либо добавьте актуальный HTTPS-адрес вручную.
  • Закладки не обновились — используйте «Синхронизировать» или «Переподключить» в блоке аккаунта.
  • Источник воспроизведения истёк — приложение один раз попробует заново получить варианты этой серии. Если восстановление не помогло, вернитесь в карточку и снова нажмите «Смотреть».
  • При раннем сбое приложение покажет диагностический экран, откуда можно повторить запуск или сохранить отчёт.

Документация проекта

Архитектура, сборка, тестирование, журнал изменений и материалы для продолжения разработки находятся в docs/.

О приложении и поддержка автора

Верхний пункт Настроек и логотип KINOGO в боковом меню открывают экран «О программе» с версией, ссылкой на репозиторий и необязательной поддержкой автора через Donate.Stream. QR-код в приложении был предоставлен владельцем репозитория и добавлен без изменений; его SHA-256: C8DCA7846A344DC83563BA338AB6691286C482A3E612C3083F0CB2D6D042BEEE. Поддержка не влияет на доступные функции приложения.

About

Неофициальный нативный каталог и Media3-плеер Kinogo для Android TV 9+: D-pad, поиск, закладки, история и обновления.

Topics

Resources

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages