APK-справочник

Обновлено:

Справочные карточки об установке Android-приложений из APK-файлов, то есть в обход Google Play и других магазинов. Здесь нет новостей и обзоров: только определения, таблицы и порядок действий. Названия пунктов меню даны по стоковому Android, у производителей смартфонов они могут немного отличаться.

  1. Шаг 1Файл APK
  2. Шаг 2Контрольная сумма
  3. Шаг 3Подпись
  4. Шаг 4Установка
  5. Шаг 5Обновление тем же ключом
На этой странице

Разделы

РазделО чём
Неизвестные источникигде выдаётся разрешение на установку в разных версиях Android
Контрольная суммакак посчитать SHA-256 в Windows, macOS, Linux и Android
Подпись APKсхемы v1–v4 и что будет, если сменится ключ
Разрешениячто дают частые разрешения и когда они оправданы
Обновления и откаткак поставить новую версию поверх старой и как вернуться назад

Глоссарий

APK (Android Package)
файл, в котором распространяется приложение. По своей структуре это ZIP-архив: внутри находятся код, ресурсы, манифест с описанием приложения и подпись разработчика.
Подпись
криптографическая отметка, сделанная закрытым ключом разработчика. Android проверяет её при каждой установке и пускает обновление, только если сертификат новой версии совпадает с сертификатом установленной.
Контрольная сумма (хеш)
значение фиксированной длины, вычисленное из содержимого файла. У SHA-256 это 256 бит, или 64 шестнадцатеричных символа. Если изменится хотя бы один байт файла, сумма станет другой.
Неизвестные источники
так раньше назывался общий переключатель, который разрешал установку любых APK. С Android 8.0 его место заняло разрешение «Установка неизвестных приложений», и выдаётся оно каждой программе отдельно: браузеру, файловому менеджеру, мессенджеру.
Split APK
приложение, разделённое на базовый APK и APK конфигураций: под архитектуру процессора, плотность экрана, язык. Такие наборы распространяются, например, в архиве .apks, который собирает утилита bundletool, и устанавливаются только целиком. На сертифицированных устройствах и на Android 10 и новее установка без какой-либо обязательной части закончится ошибкой.
versionCode
внутренний номер сборки. Система не позволит установить поверх имеющегося приложения сборку с меньшим номером.

Как читать карточки

Совет

Каждая страница самодостаточна, поэтому можно сразу открыть нужную тему. Если файл получен не из официального источника, начните с контрольной суммы и подписи: эти две проверки отвечают на вопрос, тот ли это файл, который выпустил разработчик.

Источники