You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
В настройки добавлена включённая по умолчанию галочка Защищать системные настройки кодом. Если её выключить, обычные разделы Android Settings доступны без кода, но экраны установки/удаления и Device Owner остаются отдельными уровнями защиты.
Номер версии повышен выше промежуточной 1.4.7, которая устанавливалась на Haier во время живой проверки: мобильный установщик и встроенная проверка обновлений гарантированно распознают финальную сборку как новую.
Оба APK обновлены до 1.4.8; полная история 1.0.2–1.4.7 сохранена ниже и включается в единое описание релиза.
1.4.7 — 2026-09-04
На подключённом Haier воспроизведено зависание Проверка…: в Window Manager одновременно оставались два окна TYPE_ACCESSIBILITY_OVERLAY, и результат PIN попадал уже не в тот экземпляр экрана.
Состояние блокирующего окна теперь резервируется до его добавления в Window Manager. Повторное событие Accessibility больше не может создать второй overlay поверх первого.
Назад с корневого экрана Android Screen Timer теперь явно открывает домашний экран устройства и закрывает приложение. Старое окно системных настроек из истории больше не появляется и не вызывает защиту при обычном выходе; системная кнопка Home также сразу убирает защитный экран после ухода из Settings.
Защита настроек реагирует только на устойчиво открытый опасный системный экран, а не на краткий промежуточный event при переключении окон. При включённой опции Android Settings по-прежнему закрываются кодом родителя.
В настройках добавлена отдельная включённая по умолчанию галочка Защищать системные настройки кодом. Родитель может открыть обычные разделы Android Settings без кода, не отключая отдельную защиту экранов установки/удаления и Device Owner.
Действует безопасная родительская сессия: системные страницы, открытые из авторизованных настроек приложения, временно разрешены уже существующим двухминутным окном обслуживания; ребёнку это окно без кода не выдаётся.
Если Android или прошивка потеряет ответ фоновой проверки PIN, через 15 секунд клавиатура сама включится заново и вернёт фокус. Устаревший ответ больше не оставляет неактивный экран; событие записывается в диагностический журнал без самого кода.
В журнал добавлены появление и удаление защитного окна, причина блокировки и переходы на чувствительные системные страницы — это позволяет точно восстановить последовательность сбоя без PIN, TOTP-секрета и персональных данных.
Исправление проверено непосредственно на Haier по Wi‑Fi ADB: служба Accessibility, защита системных настроек, единственный overlay и возврат на launcher протестированы на реальном устройстве.
Оба APK обновлены до 1.4.7; полная история 1.0.2–1.4.6 сохранена ниже и включается в единое описание релиза.
1.4.6 — 2026-09-04
Исправлена подтверждённая на Haier Android TV 14 причина зависания мобильной установки: телевизор принимал и устанавливал 100% APK, но OEM Package Manager оставлял поток ответа открытым, поэтому телефон бесконечно ждал Success и не переходил к настройке Accessibility.
После передачи APK родительский установщик теперь параллельно проверяет на целевом устройстве фактические versionName и versionCode. Если нужная версия уже установлена, настройка Restricted Settings, Accessibility и запуск приложения продолжаются даже без финального ответа OEM Package Manager.
На главном экране постоянно показывается точный этап: процент передачи, сколько секунд устройство завершает установку, проверка результата и настройка контроля экрана.
В IMPORTANT RESULTS журнала сразу попадает строка IN PROGRESS: APK UPLOADED с IP, портом, размером и ожидаемой версией. Поэтому экспорт во время незавершённой операции больше не выглядит так, будто нажатие INSTALL не записалось.
Главный экран и журнал мобильного установщика теперь учитывают системные панели, вырезы и жестовую навигацию Android: интерфейс не уходит под верхний статус-бар и нижнюю навигационную область.
Оба APK обновлены до 1.4.6; полная история 1.0.2–1.4.5 сохранена ниже и включается в единое описание релиза.
1.4.5 — 2026-09-04
В настройках добавлена отдельная галочка Разрешить скрытый вызов режима родителя. Она полностью отключает оба секретных жеста: удержание Back восемь секунд и семь нажатий в левом верхнем углу.
При отключённых жестах служба не добавляет на блокирующий экран ни обработчик долгого Back, ни невидимую сенсорную область. Уже открытый overlay сразу пересоздаётся без этих обработчиков, поэтому ребёнок не сможет воспользоваться старым экраном.
USB Recovery управляется своей независимой галочкой. Родитель может отключить только скрытые жесты, только восстановительную флешку или оба пути одновременно.
Если оба дополнительных пути выключены, настройки остаются доступны через обычный запуск значка Android Screen Timer и постоянный PIN. Временный шестизначный код ребёнка по-прежнему только добавляет заданное время и не открывает настройки.
Оба APK обновлены до 1.4.5; полная история 1.0.2–1.4.4 сохранена ниже и включается в единое описание релиза.
1.4.4 — 2026-09-04
Устранён опасный USB-сброс: подключение флешки, зарядки, телефона, мыши, клавиатуры или другого USB-устройства больше не выключает таймер, не удаляет PIN и не очищает настройки.
USB Recovery теперь реагирует только на файл Recovery, Recovery.txt или File Recovery в корне смонтированной флешки; регистр букв и размер файла не важны. Файл открывает родительский режим без удаления конфигурации или снятия Device Owner.
В настройках добавлена галочка Разрешить USB Recovery. Если она выключена, даже правильный файл полностью игнорируется.
Блокирующий overlay получил два состояния в одном и том же окне. Обычный чёрный экран принимает шестизначный временный код и автоматически добавляет установленное родителем время; удержание Back восемь секунд либо семь нажатий в левом верхнем углу переключают этот же overlay в синий режим родителя.
Синий режим принимает постоянный PIN или одноразовый аварийный четырёхзначный код и позволяет вручную выбрать 10, 15, 20, 30, 40, 60, 90 или 120 минут либо открыть полноценные настройки. Второй overlay не создаётся, поэтому родительское управление не может оказаться под экраном блокировки.
При первой настройке создаётся отдельный четырёхзначный аварийный код. Хранится только его PBKDF2-хеш, успешное использование удаляет код, три неудачные попытки включают 30-минутную задержку, а новый код можно создать в настройках.
Старый режим спрашивать каждый раз безопасно мигрирует на автоматические 15 минут: временный код, который родитель сообщает ребёнку, больше не открывает выбор продолжительности.
В ручной выбор и настройки автопродления добавлены 90 и 120 минут.
После включения экрана служба выполняет дополнительные отложенные проверки, а потерянная ссылка на overlay восстанавливается, чтобы блокировка надёжно возвращалась после сна телевизора или планшета.
Ещё раз уменьшены поля, кнопки, переключатели, отступы и элементы выбора приложений; восемь вариантов продления расположены компактной сеткой по две кнопки.
Оба APK обновлены до 1.4.4; полная история 1.0.2–1.4.3 сохранена ниже и включается в единое описание релиза.
1.4.3 — 2026-09-04
Журнал «Родительского установщика» теперь начинается с отдельного блока IMPORTANT RESULTS, где невозможно потерять главный итог среди сетевых проверок: сохраняются точные IP и порт целевого устройства, успешное сопряжение, успешное ADB-подключение, имя устройства и итог установки.
Успешная установка записывается однозначной строкой SUCCESS: APP INSTALLED с адресом IP:порт, package ID dev.tvtimer.app, реальным ответом Android Package Manager (Success) и результатами настройки Accessibility, Device Owner и отключения беспроводной отладки.
Ошибки сопряжения, подключения и установки также вынесены наверх с адресом цели, этапом операции, классом исключения и сообщением; отсутствие найденных устройств фиксируется как отдельный результат после полного завершения поиска.
Каждое нажатие Найти, Сопрячь, Подключить и INSTALL записывается до валидации данных. Кнопка INSTALL больше не остаётся «мёртвой» до подключения: нажатие всегда даёт понятное сообщение и фиксирует INSTALL NOT STARTED с причиной, если ADB-соединения ещё нет.
Полная хронология никуда не исчезла: ниже остаются все NSD/mDNS-события, TCP-запросы и ответы, ADB-команды, ответы устройства, прогресс APK и stack trace. Основной журнал ограничен 512 КиБ, отдельный итоговый — 64 КиБ; старые записи вытесняются автоматически.
Каждый экспорт содержит точное поле exportedAt, поэтому видно, до какого момента журнал успел записаться. Для более надёжного обнаружения ADB/mDNS на прошивках и телефонах, фильтрующих multicast, на время десятисекундного поиска берётся и гарантированно освобождается Android Wi‑Fi MulticastLock.
На телефоне родителя убраны QR-страницы журнала: они неудобны и там не нужны. Оставлены выделяемый полный текст, «Скопировать всё», обновление и сохранение настоящего .txt через системный выбор папки. QR-диагностика сохранена только в самом ограничителе для TV и других целевых устройств, где перенос текста иначе затруднён.
Главный экран и инструкция теперь явно разделяют два разных пути. Wi‑Fi — полноценная установка прямо с телефона по четырём коротким шагам; USB — отдельный путь через флешку или компьютер, без ложного обещания работы обычного кабеля телефон ↔ TV. Порт сопряжения из окна шестизначного кода и порт подключения с главного экрана «Беспроводной отладки» объяснены отдельно на реальном примере их разного назначения.
Настройка контроля экрана теперь не только отправляет ACCESS_RESTRICTED_SETTINGS allow, но и сразу читает фактический AppOp обратно. В важном блоке появляется SUCCESS: RESTRICTED SETTINGS ALLOWED либо точный warning с IP/портом и ответом прошивки.
В стартовый журнал добавлены target SDK и состояние требования Android 17 ACCESS_LOCAL_NETWORK, чтобы новая политика локальной сети не маскировалась под ошибку поиска. Установщик по-прежнему target SDK 35, поэтому на Android 17 отдельное runtime-разрешение для него не требуется.
Сценарий проверен по живому Wi‑Fi ADB на Haier Android TV FF Pro с Android 14: устройство рекламирует разные порты сопряжения и подключения, а причиной отката Accessibility подтверждён системный AppOp ACCESS_RESTRICTED_SETTINGS: deny, успешно меняющийся через ADB на allow.
Оба APK обновлены до 1.4.3; полная история 1.0.2–1.4.2 сохранена ниже и включается в единое описание релиза.
1.4.2 — 2026-09-03
«Родительский установщик» теперь всегда ведёт подробный постоянный журнал: запуск процесса, поток выполнения, все этапы NSD/mDNS, системные errorCode, каждую TCP-проверку IP:5555, сопряжение, подключение, ADB shell-команды, полные ответы устройства, передачу APK, настройку и stack trace ошибок.
Журнал записывается в приватный файл и переживает перезапуск приложения. Размер ограничен 512 КиБ: при заполнении удаляется только самая старая часть, поэтому журнал не расходует память бесконечно.
На главном экране добавлена кнопка «Полный журнал запросов и ответов». В отдельном окне доступны полный выделяемый текст, обновление и постраничные QR-коды.
Добавлены «Скопировать всё» и «Сохранить .txt» через стандартный системный выбор папки или облачного хранилища Android.
Необработанные аварийные завершения записываются глобальным crash handler ещё до открытия главного экрана.
Шестизначный код сопряжения, приватный ADB-ключ и бинарное содержимое APK принудительно исключаются из журнала; локальные IP, сведения об устройстве, команды и ответы сохраняются для полноценной диагностики.
Добавлены тесты безопасного удаления секретов и разбиения Unicode-журнала на QR-страницы. Оба APK обновлены до 1.4.2; полная история предыдущих обновлений сохранена ниже и включается в объединённое описание релиза.
1.4.1 — 2026-09-03
Исправлено аварийное завершение «Родительского установщика» на Android 17 и других прошивках, которые возвращают результаты NSD/mDNS с системного ConnectivityThread: все изменения интерфейса теперь гарантированно выполняются в главном UI-потоке.
Исправление действует и для кнопки поиска, и для сценария сопряжения по Wi‑Fi, поскольку оба использовали один поток обнаружения устройств.
Добавлена защита от запоздалых callback после остановки поиска; состояние остановки безопасно видно системному и UI-потоку.
Кнопка и инструкция теперь прямо говорят «по Wi‑Fi / сети». Уточнено, что прямой USB-ADB с телефона требует режима USB-host/OTG на телефоне и ADB peripheral-интерфейса у целевого устройства; обычные USB host-порты телефона и телевизора напрямую не соединяются.
Оба APK обновлены до 1.4.1; полная история предыдущих обновлений сохранена ниже и включается в объединённое описание релиза.
1.4.0 — 2026-09-03
Добавлен второй APK AndroidScreenTimer-Parent-1.4.0.apk — самостоятельный мобильный «Родительский установщик» без Bugjaeger, компьютера и root.
Установщик находит Android-устройства через стандартные ADB mDNS-объявления и дополнительно проверяет старый сетевой ADB на порту 5555 в локальной /24 сети; для роутеров без mDNS оставлен ручной ввод IP и портов.
Поддержано системное сопряжение Android 11+ по свежему шестизначному коду, обычная авторизация ADB-ключа и подключение к уже сопряжённым устройствам.
APK ограничителя собирается первым и автоматически встраивается в соответствующую debug/release-сборку мобильного установщика; пользователь получает два независимых APK, но установщику не нужна отдельная загрузка блокировщика.
Кнопка INSTALL передаёт APK по официальному ADB package-install протоколу, проверяет установленный package ID и открывает Android Screen Timer на целевом устройстве.
По выбору родителя установщик добавляет Accessibility-службу, не затирая TalkBack и другие включённые службы, пробует разрешить Restricted Settings и проверяет фактический результат.
Отдельная выключенная по умолчанию опция пробует назначить Device Owner только после явного предупреждения о новом/сброшенном устройстве; отказ прошивки не отменяет обычную установку.
Современная беспроводная отладка по умолчанию выключается после успешной установки; для старого OEM-переключателя сетевой отладки показывается понятное напоминание.
В мобильном мастере есть русский и английский интерфейс, универсальные инструкции отдельно для TV/Google TV и телефона/планшета, а также честные запасные пути для старых устройств без Wi‑Fi ADB.
README больше не предполагает наличие меню ⋮ → Разрешить ограниченные настройки на каждом телевизоре: описаны мобильный ADB-путь, прямой APK и ограничения, которые обычное приложение обойти не может.
Основной ограничитель обновлён до 1.4.0 (versionCode 11); полная история 1.0.2–1.3.2 сохранена ниже и включается в объединённое описание релиза.
1.3.2 — 2026-09-03
Исправлена настройка контроля экрана: приложение открывает карточку именно своей Accessibility-службы, при необходимости ведёт на «О приложении» для разрешения Restricted Settings и показывает результат после возврата.
Добавлен полноценный локальный диагностический журнал запуска, подключения, отключения, ошибок overlay и аварийных завершений. Журнал ограничен по размеру, не содержит PIN, TOTP-секрет, аккаунты, сеть или историю просмотра.
Весь сохранённый журнал доступен в настройках как пронумерованные QR-страницы для переноса на телефон; также его можно скопировать одной кнопкой.
Ошибка при подключении Accessibility больше не валит службу молча: запуск выполняется безопасно и автоматически повторяется до трёх раз с записью точной причины.
Настройки, полноэкранное меню родительского кода и окно выбора приложений получили центрированную безопасную ширину с правильными парными отступами; уменьшены заголовки, тексты, кнопки, поля, переключатель языка и PIN-клавиатура, убрано увеличение элементов при фокусе.
В отдельном окне выбора теперь отображаются реальные иконки установленных приложений и системная запасная иконка для недоступных пакетов.
QR-код на самом первом экране уменьшен до 220 dp и не занимает больше трети высоты; повторный родительский QR в настройках остаётся немного крупнее.
В верхнюю часть русского и английского README добавлен пользовательский poster.jpg; документация дополнена новой диагностикой и точным способом включения Restricted Settings.
Версия APK повышена до 1.3.2 (versionCode 10); полная история предыдущих обновлений сохранена ниже и включена в объединённое описание релиза.
1.3.1 — 2026-09-03
Публичное название проекта обновлено до «Родительский контроль — Android Screen Timer».
Основной GitHub-репозиторий переименован в alexaistudio/parental-control-android-screen-timer; ссылки, бейджи, About и встроенная проверка обновлений переведены на новый адрес.
Новый APK называется AndroidScreenTimer-1.3.1.apk; User-Agent, Gradle project name, тема, log-теги и имя default TV-баннера приведены к бренду Android Screen Timer.
Старый адрес перенаправляется GitHub на новый репозиторий. Из-за строгой проверки прежнего URL версии до 1.3.1 при необходимости следует один раз обновить вручную; версии 1.3.1+ получают следующие обновления из нового репозитория.
dev.tvtimer.app, подпись APK и прежние внутренние ID намеренно сохранены, чтобы приложение обновилось поверх установленного и не потеряло PIN, QR-секрет, лимиты и статистику.
Полная история предыдущих версий сохранена ниже и повторяется в объединённом описании GitHub Release без потери деталей.
1.3.0 — 2026-09-03
TV Timer получил новое понятное имя Android Screen Timer и теперь официально поддерживает Android TV, Google TV, планшеты и телефоны.
Интерфейс адаптирован к узким сенсорным экранам: QR-код, PIN-поля, длинные кнопки, системные отступы и отдельное окно выбора приложений больше не выходят за границы.
Защитное окно стало прокручиваемым, корректно перестраивается после поворота и не считает время, пока телефон находится на экране блокировки.
Количество встроенных профилей имени и значка увеличено с 3 до 10: Android Screen Timer, Калькулятор, Медиа-служба, Часы, Погода, Заметки, Календарь, Файлы, Галерея и Справка.
Для каждого нового профиля добавлены собственные значок, локализованное название и TV-баннер.
Внизу настроек и в обоих README добавлен добровольный блок поддержки разработки через USDT TRC-20: проверенный QR-код, сеть TRON, адрес и кнопка копирования.
Сохранены прежние package ID, подпись, настройки, QR-секрет, PIN, лимиты и внутренние идентификаторы старых профилей, поэтому версия устанавливается как обычное обновление.
README и описание проекта обновлены для телевизоров, планшетов и телефонов; все разделы истории 1.1.0–1.2.0 сохранены ниже полностью, без потери деталей.
1.2.0 — 2026-09-02
Добавлен полный английский интерфейс наряду с русским.
Компактный переключатель RU / EN доступен уже на первом QR-экране, при каждом открытии приложения, в настройках и в отдельном окне выбора приложений.
Переключатель языка добавлен на все полноэкранные защитные окна: ввод PIN/TOTP-кода, детское напоминание, выбор продления и защита системных настроек.
Выбранный язык сохраняется локально и применяется к настройке, статусам, ошибкам, обновлению, PIN-панели и accessibility-overlay без передачи данных в сеть.
Launcher-профили, название accessibility-службы и описание Device Admin получили системные русские и английские ресурсы.
README дополнен коммерческим двуязычным хедером, понятным описанием пользы, кнопкой загрузки и актуальными GitHub-бейджами; добавлен отдельный полный README.en.md.
Полностью сохранены функции 1.1.0–1.1.2: QR для нескольких родителей, пятиминутный ввод кода с пульта, варианты продления, отдельный выбор приложений, детские напоминания, маскировка и защита удаления.
1.1.2 — 2026-09-02
В настройках добавлены отключаемые напоминания ребёнку каждые 10, 20 или 30 минут фактического просмотра.
Сообщение сделано коротким и понятным: «Ты уже смотришь N минут. Продолжить?» с действиями «Да, продолжить» и «Нет, закончить».
«Нет, закончить» возвращает на главный экран телевизора; «Да, продолжить» возобновляет таймер до следующего интервала.
Подтверждённые предупреждения сохраняются по дням и не повторяются после перезапуска службы или телевизора.
Полностью сохранены возможности 1.1.0 и 1.1.1: TOTP на нескольких телефонах, пятиминутные коды, отдельный выбор приложений, варианты продления, защита удаления и launcher-профили.
1.1.1 — 2026-09-02
В настройках можно повторно показать действующий QR-код и добавить тот же TOTP-аккаунт на телефоны нескольких родителей без смены секрета и аннулирования уже подключённых телефонов.
Выбор контролируемых приложений вынесен на отдельный TV-экран.
Нажатие системной кнопки Back в окне выбора немедленно сохраняет отмеченные приложения и возвращает в настройки; длинный список больше не растягивает основную страницу.
Полностью сохранены все функции версии 1.1.0: пятиминутные TOTP-коды, варианты продления, защита удаления, Device Owner и launcher-профили.
1.1.0 — 2026-09-02
Добавлена уникальная QR-привязка телефона при первой настройке и поддержка стандартных TOTP-приложений.
Каждый 30-секундный код принимается до пяти минут без накопления кэша в памяти.
После кода родителя можно выбрать 10, 15, 20, 30, 40 минут или 1 час; в настройках доступно автоматическое значение либо выбор при каждом продлении.
Все системные настройки и установщик закрываются кодом родителя.
Добавлена поддержка Device Owner, которая системно запрещает удаление TV Timer; USB-восстановление снимает защиту.
Добавлены launcher-профили «TV Timer», «Калькулятор» и «Медиа-служба» с отдельными иконками и TV-баннерами.
QR/TOTP, новые варианты продления, маскировка и защита удаления покрыты unit-тестами; обновлена документация установки.
1.0.2 — 2026-08-15
Восстановлен фокус на первой цифре после неверного PIN на TV-пульте.