Оформить доступ
Отметка на ленте · отказ обновления

Обновление Happ не встаёт: что это значит

Система показывает ошибку, установщик молчит или магазин не предлагает новую версию. Чаще всего это не поломка приложения, а расхождение источников: свежая сборка приезжает не туда, где стоит рабочая программа, либо не может переписать занятые файлы. Бывает и обратное — обновлять нечего: короткая ссылка «последний выпуск» отдаёт только стабильный канал, а число из чужой статьи взято из предварительного.

Здесь разобран только момент установки обновления. Всё, что происходит уже после успешной замены версии, вынесено на страницу что меняется после обновления.

Короткий ответ

Обновление почти всегда упирается в источник: свежая сборка приезжает не в ту программу, которой вы пользуетесь.

  • Источник обязан совпадать. Программа пришла из магазина — обновляется в магазине. Ставили файлом от разработчика — берите свежий файл оттуда же. Обновление одного источника до другого не дотягивается.
  • На Android магазинная и файловая сборки — два разных приложения. Идентификаторы пакета у них не совпадают, поэтому APK магазинную программу не подменяет: он обновляет только свою копию, а вторая остаётся с прежним номером.
  • На компьютере мешают занятые файлы. Пока программа висит в фоне у часов, установщик не может переписать то, что она держит открытым.
  • Предупреждения после обновления — не отказ. Новый файл система видит впервые, поэтому спрашивает заново: и про запуск, и про доступ в сеть.
  • Иногда «не обновляется» значит «никто не обновлял». Официального автообновления под Linux нет: системный менеджер о выходе нового выпуска не узнаёт, и встроенной проверки у этой сборки тоже нет. Неофициальный путь существует — пакет в пользовательском репозитории Arch, — но ведёт его не разработчик, и следить за версией там придётся самому.

Разбор по признакам

Слева — то, что видно на экране. Ищите свою строку и читайте вправо.

Что видноЧто это на самом делеЧто делать
Android: файл поставился без единой ошибки, а номер версии в программе прежнийНа устройстве стоит магазинная сборка, а вы поставили файл. Имена пакетов у них разные, значит, это два приложения: свежий выпуск уехал во второе, а открываете вы первоеНайти на экране вторую иконку Happ и работать в ней, добавив туда подписку, — либо обновлять магазинную сборку кнопкой в магазине. Ссылку скопируйте заранее
Android: система отказывается ставить файл на место такой же файловой сборкиКлючи подписи у файлов не совпадают: тот, что вы ставите, собран не тем автором, чья версия стоит. Замена по чужому ключу не проходитОбновляться тем же файлом, каким ставили: со страницы выпусков разработчика. Перевыкладки со сторонних сайтов для этого не годятся — что внутри, не знает никто
Windows: установщик не может перезаписать файл, ругается на занятый файлПрограмма не закрыта полностью. Крестик в углу окна обычно прячет её в область у часов, а не выключаетОткрыть меню значка у часов, выйти из программы и только потом запускать установщик
Windows: после обновления снова «Система Windows защитила ваш компьютер»SmartScreen оценивает каждый новый файл отдельно. Свежий установщик для него незнаком, даже если прошлый вы уже запускалиНажать «Подробнее» и «Выполнить в любом случае». Это повторяется после каждого обновления — норма, а не сбой
Windows: после обновления снова «Разрешить связь для этого приложения»Брандмауэр держит правила для конкретного файла. Обновление — другой файл, и разрешение спрашивается зановоРазрешить. Если окно закрыли случайно, обновление всё равно установлено — вопрос вернётся при следующем запуске
iPhone: кнопки «Обновить» в магазине нет, новая версия не приходитОбновление привязано к тому аккаунту магазина, которым программу ставили. Сменили аккаунт или вышли из него — обновление предлагать нечемуВойти в магазине под тем же аккаунтом, с которого шла установка, и открыть раздел покупок. Оба официальных пути идут через Apple — магазин и канал предварительного тестирования; файлом эту систему обновить нельзя, сборок для ручной установки разработчик не выкладывает
Linux: системный менеджер обновлений новую версию не показываетПрограмма поставлена файлом пакета и в подключённых репозиториях не числится. Менеджер просто не знает, что искать, а встроенной проверки у этой сборки нетВзять свежий пакет того же формата со страницы выпусков и повторить команду установки. Старую версию удалять не нужно

Порядок разбора, если своей строки в таблице не нашлось

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

  1. 1

    Вспомните, откуда стоит программа

    Магазин, файл со страницы выпусков разработчика или файл, который кто-то прислал. От ответа зависит всё остальное: обновление идёт тем же путём, каким шла установка.

    Быстрая проверка на Android: если в карточке приложения в магазине есть кнопка «Обновить» или «Открыть» — версия магазинная.

  2. 2

    Прочитайте текст окна целиком

    Упоминание подписи означает, что вы кладёте файл на место сборки другого автора: помогает только свежий выпуск оттуда, откуда ставили. Слова про защиту компьютера и про разрешение связи — это предупреждения системы, обновление при них проходит.

    Если окна не было вовсе, а версия не сдвинулась, читать нечего: обновилась вторая копия программы.

  3. 3

    На компьютере закройте программу до конца

    Выйдите через меню значка в области уведомлений, а не крестиком окна. Пока процесс жив, часть файлов занята, и установщик останавливается на середине.

    На macOS то же самое: программу перед заменой нужно завершить.

  4. 4

    Сохраните ссылку-подписку, прежде чем что-то удалять

    Удаление программы уносит с собой профили и добавленную ссылку. Обновление поверх их не трогает, а вот соседняя копия из другого источника о вашей подписке ничего не знает: туда её вставляют руками.

    Скопируйте ссылку в заметки заранее: вместе с приложением уходят и профили, и она.

  5. 5

    Убедитесь, что новая версия вообще существует

    Бывает, что обновляться просто не на что: у вас уже стоит последний стабильный выпуск, а число из чужой статьи взято из предварительного канала. Сверьтесь с разбором номеров, прежде чем чинить то, что не сломано.

    Как отличить один канал от другого — на странице про номера версий.

Смена источника — это вторая программа, а не обновление

Переход с магазинной сборки на файл (и обратно) выглядит так: новая сборка появляется отдельным приложением с пустым списком профилей, а прежняя остаётся на месте и продолжает жить своим источником. Ничего не ломается и не удаляется само.

Поэтому ссылку-подписку скопируйте заранее: в новой копии её придётся вставить руками, а если профилей несколько — выпишите, какой из них рабочий. Старую копию можно оставить или снести, но со сносом уйдут её профили и ссылка. Если менять источник не хочется, а свежая версия чем-то не устроила — есть обратная дорога.

Короткие вопросы

После установки файла на Android появилась вторая иконка Happ. Это ошибка?

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

Можно ли поставить файл поверх магазинной версии, ничего не удаляя?

Поставить можно, и удалять действительно ничего не нужно: файл магазинную программу не трогает, а встаёт рядом. Дальше выберите одну копию — ту, в которой лежит ваш доступ, — и обновляйте только её.

Windows после каждого обновления снова ругается на файл. Это подозрительно?

Нет, так и задумано. SmartScreen смотрит на конкретный файл, а не на программу вообще: каждый новый установщик для него незнакомец. То же самое с запросом брандмауэра.

На iPhone обновление не приходит, хотя раньше приходило. Что изменилось?

Скорее всего, аккаунт магазина. Обновления предлагаются только тому аккаунту, с которого программа была установлена: вышли из него или переключились на другой — предлагать нечего.

На Linux Happ не появляется в списке обновлений системы. Это ошибка?

Нет. Пакет поставлен файлом и в репозиториях не числится, поэтому системный менеджер о новых выпусках не знает. Официального автообновления под Linux нет ни на стороне системы, ни внутри самой программы. Здесь «не обновляется» означает ровно одно: никто не обновлял.