Разработчики, создающие приложения и игры для Android, часто сталкиваются с тем, что их проекты нужно оптимизировать для систем с различными аппаратными характеристиками и версиями операционной системы. В большинстве случаев это приводит к тому, что установочный файл «набирает» большой вес, ведь в него нужно внести конфигурации для всех вариантов устройств.
С недавних пор Google предложил разработчикам приложений для Android разделять установочные файлы своих проектов на несколько файлов APK. Каждый такой APK отвечает за ту или иную часть приложения, и они не работаю по отдельности.
Как правило, в такой набор входят:
Основной APK (программное ядро приложения).
APK с библиотеками под разные архитектуры процессоров (arm64-v8a, armeabi- v7a и т. д.).
APK с графическими файлами под разные размеры экрана (xhdpi, xxhdpi, xxxhdpi и т. д.).
При установке с Google Play приложений с разделенным APK, на устройство скачиваются только те части, которые нужны для работы с этой конкретной системой. Это значительно уменьшает размер и время загрузки, что конечно же очень хорошо.
Сложности начинаются, если пользователь хочет загрузить «разделенное» приложение не с Google Play, а с другого ресурса. Какие файлы из комплекта нужно загрузить для установки на конкретном устройстве? И как их устанавливать?
Для решения этой проблемы и был создан формат инсталлятора APKS, которые является фактически архивом, объединяющим все APK-файлы приложения. При его использовании пользователю не придется обременять себя вопросами — ему нужно будет скачать только файлы APK и установить их с помощью специальной программы — Split APKs Installer (SAI).