Файлы расширения APK
Для некоторых приложений (например, для некоторых игр) требуются дополнительные ресурсы и активы, которые могут быть предоставлены с учетом ограничения по максимальному размеру приложения Android, накладываемого Google Play. Это ограничение зависит от версии Android, для которой предназначен пакет APK:
- 100 МБ для пакетов APK, предназначенных для Android 4.0 или более поздних версий (API уровня 14 или выше);
- 50 МБ для пакетов APK, предназначенных для Android 3.2 или более ранних версий (API уровня 13 или выше).
Чтобы преодолеть это ограничение, Google Play будет размещать и распространять два файла расширения вместе с пакетом APK, позволяя приложению косвенно превышать этот предел.
При установке приложения на большинстве устройств файлы расширения скачиваются вместе с пакетом APK и сохраняются в общее хранилище (на SD-карту или подключаемый по USB раздел) на устройстве. На некоторых устаревших устройствах файлы расширения файлов не могут автоматически устанавливаться с пакетом APK. В таких ситуациях приложение должно содержать код, который будет скачивать файлы расширения при первом запуске приложения пользователем.
Файлы расширения рассматриваются как непрозрачные двоичные BLOB-объекты (obb) и могут иметь размер до 2 ГБ. Android не выполняет специальную обработку этих файлов после их скачивания — файлы могут быть в любом формате, подходящем для приложения. По существу, для файлов расширения действует следующий рекомендуемый подход:
- Основное расширение . Этот файл является основным файлом расширения для ресурсов и ресурсов, которые не будут соответствовать ограничению размера APK. Файл расширения main должен содержать основные ресурсы, необходимые приложению, и редко обновляться.
- Расширение исправлений — предназначено для небольших обновлений файла расширения main. Этот файл можно обновлять. Применение необходимых исправлений или обновлений из этого файла входит в обязанности приложения.
Файлы расширения должны отправляться одновременно с пакетом APK. Google Play не допускает отправку файла расширения в существующей пакет APK или обновление существующих пакетов APK. Если необходимо обновить файл расширения, необходимо отправить новый ПАКЕТ APK с обновленным versionCode .
Хранилище файлов расширения
Скачанные на устройство файлы хранятся в расположении shared-store/Android/obb/package-name:
- shared-store — это каталог, заданный параметром Android.OS.Environment.ExternalStorageDirectory .
- package-name — это имя пакета приложения в стиле Java.
Скачанные файлы расширения нельзя перемещать, изменять, переименовывать или удалять из их расположений на устройстве. В противном случае это приведет к повторному скачиванию файлов и удалению прежних файлов. Кроме того, каталог файлов расширения должен содержать только файлы пакета расширения.
Файлы расширения не обеспечивают безопасность или защиту содержимого. Другие приложения или пользователи могут получить доступ к любым файлам, сохраненным в общем хранилище.
Если необходимо распаковать файл расширения, распакованные файлы следует сохранить в отдельном каталоге, например в указанном свойством Android.OS.Environment.ExternalStorageDirectory .
Альтернативой извлечению файлов из файла расширения является считывание ресурсов напрямую из файла расширения. Файл расширения — это не что иное, как ZIP-файл, который можно использовать с соответствующим ContentProvider . Android.Play.ExpansionLibrary содержит сборку System.IO.Compression.Zip, в состав которой входит ContentProvider , предоставляющий прямой доступ к некоторым файлам мультимедиа. Если файлы мультимедиа упакованы в ZIP-файл, вызовы воспроизведения мультимедиа могут напрямую использовать файлы в ZIP-файле без распаковки архива. Добавляемые в ZIP-файл файлы мультимедиа не должны быть сжаты.
Формат имени файла
После скачивания файлов расширения Google Play будет использовать следующую схему для именования расширения:
[main|patch]...obb
В эту схему входят три компонента:
- main или patch — указывает, является ли это файлом расширения main или исправления. Допускается только один файл каждого типа.
- — это целое число, соответствующее versionCode файлу APK, с которым был впервые связан файл.
- — Это имя пакета приложения в стиле Java.
Например, если пакет APK имеет версию 21 и имя mono.samples.helloworld , имя основного файла расширения будет main.21.mono.samples.helloworld.
Процесс скачивания
При установке приложения из Google Play файлы расширения должны быть скачаны и сохранены вместе с пакетом APK. Однако в некоторых случаях это не происходит или файлы расширения могут быть удалены. Чтобы разобраться с этим условием, приложению необходимо проверить наличие файлов расширения, а затем скачать их, если это необходимо. На следующей блок-схеме показано рекомендуемое выполнение этого процесса:

При запуске приложение должно проверить наличие соответствующих файлов расширения на текущем устройстве. Если файлы отсутствуют, приложению следует сделать запрос из службы лицензирования приложений Google Play. Эта проверка выполняется с помощью библиотеки проверки лицензий (LVL) и должна проводиться для бесплатных и лицензированных приложений. Библиотека LVL используется в основном в платных приложениях для применения ограничений, накладываемых лицензированием. Однако компания Google расширила возможности библиотеки, чтобы ее можно было также использовать с библиотеками расширения. Бесплатные приложения должны проверять библиотеку LVL, но могут игнорировать лицензионные ограничения. Запрос LVL отвечает за предоставление следующих сведений о файлах расширения, необходимых приложению:
- Размер файла — размеры файлов расширения используются в рамках проверка, определяющих, были ли уже загружены правильные файлы расширения.
- Filenames — это имя файла (на текущем устройстве), в которое необходимо сохранить пакеты расширения.
- URL-адрес для скачивания — URL-адрес, который следует использовать для скачивания пакетов расширения. Он уникален для каждого скачивания и прекращает действовать вскоре после предоставления.
После проверки LVL приложение должно скачать файлы расширения с учетом следующих моментов в ходе процесса скачивания:
- На устройстве может быть недостаточно места для хранения файлов расширения.
- Если сеть Wi-Fi недоступна, пользователю следует разрешить приостановить или отменить скачивание во избежание нежелательных расходов.
- Файлы расширения скачиваются в фоновом режиме, чтобы не нарушать работу пользователя.
- Во время скачивания в фоновом режиме должен отображаться индикатор хода выполнения.
- Ошибки, возникающие во время скачивания, обрабатываются корректно.
Основные сведения об архитектуре
При запуске основное действие проверяет, скачаны ли файлы расширения. Если это так, их необходимо проверить на допустимость.
Если файлы расширения не были скачаны или текущие файлы являются недопустимыми, следует скачать новые файлы расширения. Привязанная служба создается как часть приложения. Запущенное основное действие приложения использует привязанную службу для проверки служб лицензирования Google с целью определения имен файлов расширения и URL-адреса скачиваемых файлов. Затем привязанная служба скачает файлы в фоновом потоке.
Для оптимизации процесса интеграции файлов расширения в приложение компания Google создала несколько библиотек на Java. Эти библиотеки перечислены ниже:
- Библиотека загрузчика . Это библиотека, которая сокращает усилия, необходимые для интеграции файлов расширения в приложение. Она скачивает файлы расширения в фоновой службе, отображает уведомления для пользователей, обрабатывает проблемы с сетевым подключением, возобновляет скачивания и т. д.
- Библиотека проверки лицензии (LVL) — библиотека для выполнения и обработки вызовов служб лицензирования приложений. Ее также можно использовать для проверок лицензирования, чтобы узнать, авторизовано ли приложение для работы на устройстве.
- ZIP-библиотека расширения APK (необязательно) — если файлы расширения находятся в ZIP-файле, эта библиотека будет выступать в качестве поставщика содержимого и позволит приложению считывать ресурсы и ресурсы непосредственно из ZIP-файла без необходимости разворачивать ZIP-файл.
Эти библиотеки были перенесены в C# и доступны по лицензии Apache 2.0. Чтобы быстро интегрировать файлы расширения в существующее приложение, можно добавить эти библиотеки в существующее приложение Xamarin.Android. Код доступен на странице Android.Play.ExpansionLibrary на сайте GitHub.
Что такое APK-файлы и зачем они нужны?
Почти любой пользователь смартфонов и других гаджетов на Android слышали об APK-файлах. Данная статья призвана помочь разобраться, что представляют собой эти файлы, и как их использовать.
APK (Android Package Kit) — формат файлов, состоящий из полных архивированных кодов Android-приложений. Это компоненты упакованы в один установочный файл — это и есть APK. Одного такого файла обычно достаточно, чтобы установить целое и работающее приложение.

Вопреки названию, APK поддерживается не только на Android. Ряд приложений на системах Windows, Mac и Linux также позволяет открывать подобные архивы и извлекать из них отдельные файлы кода.
Зачем нужны APK-файлы?
Данные файлы необходимы для быстрой установки различных приложений на Android-устройства. Также APK могут представлять ценность для изучения разработчиками — архивы открываются через архиваторы и специальные программы на компьютерах. Они позволяют разработчикам «вынимать» отдельные части кода приложения из архива, просматривать их, редактировать и отлаживать.
При запуске APK-приложения происходит поочередная систематизированная распаковка всех включенных в архив компонентов, таких как сам код приложения (.DEX), ресурсы, библиотеки, файл манифеста и активы. При открытии APK архиваторами или специальными приложениями все эти файлы доступны для извлечения отдельно.
Где взять APK?
Самым обширным источником APK-файлов является маркет Google Play, который по умолчанию установлен в каждое Android-устройство. Но площадка не дает возможности скачать их отдельно, а сразу производит установку. При загрузке приложений через Google Play происходит автоматическая разархивация APK, и пользователю не нужно искать этот файл на устройстве и запускать его.

Что получить непосредственно файл в формате APK, можно использовать специальные ресурсы и источники APK-приложений в интернете. В этом случае нет гарантии, что при установке приложений из подобных источников устройство не пострадает. Для скачивания и установки APK нужно пользоваться проверенными ресурсами, например, 4PDA или Trashbox.
Подробнее об установке приложений из неизвестных источников можно узнать в специальной статье.
Как установить APK-файл на Android?
Для установки приложения APK-файла через площадку Google Play достаточно ввести в строке поиска название необходимого приложения, перейти на его страницу, нажать кнопку «установить», дать приложению необходимые разрешения и дождаться загрузки.
Всегда изучайте список разрешений, которые приложение запрашивает от устройства. Все подробности здесь.
Установка APK-приложений через сторонние ресурсы требует больше времени, действий, а иногда и нервов. Для начала найдите нужное приложение через поисковую систему в браузере — это самая тяжелая часть, так как важно внимательно отнестись к выбору источника загрузки APK-файла. Перейдя на источник загрузки, нужно произвести саму загрузку APK (процесс может различаться на разных ресурсах).
По окончании загрузки перейдите в папку с загруженными файлами, откройте APK, нажмите кнопку «принять» и дождитесь окончания установки. Помните, что данный способ установки приложений может привести к заражению смартфона.

Как проверить APK на наличие вирусов?
Существует множество ресурсов, позволяющих проверить APK на наличие вирусного содержимого, например, HackApp, VirusTotal или NVISO. Если вас беспокоит безопасность устройства при установке приложений из сторонних источников, советуем прочитать данную статью.
Рекомендуем почитать:
- Xiaomi Mijia Electric Precision Screwdriver — обзор электрической отвертки
- Ошибка синтаксического анализа пакета — что это значит?
- Как установить приложение ВТБ Онлайн на смартфон в 2023 году?
- Как установить приложение Альфа Банк на смартфон в 2023 году?
- APK-файлы могут быть опасными? Как отличить вирусный APK?
Что такое файл APK – как его использовать на Android, Windows и Mac
APK-файлы используются операционной системой Android для хранения установочного пакета приложений. В пакете APK хранится агрегированное Android-приложение. Он также содержит все ресурсы, необходимые для запуска приложения. Это может включать в себя упорядоченный код, изображения, контент, записи, декларации и многое другое.
Для получения общих рекомендаций по наиболее эффективному способу открытия файлов APK и просмотра его содержимого следуйте этому руководству. Или вы можете просто изменить расширение файла APK на ZIP или JAR и открыть его с помощью WinZip, 7-Zip или другого разархиватора. Вы почти наверняка увидите внутреннюю структуру файла APK.
Как открыть файл APK
APK-файлы могут быть открыты в нескольких операционных системах, но по большей части они используются в гаджетах на Android.
Откройте файл APK на Android
Чтобы открыть APK-файл на своем Android-гаджете, нужно просто загрузить его так же, как любой другой файл, и после этого открыть по запросу. Однако, файлы APK, установленные из-за пределов магазина Google Play, вероятно, не будут установлены немедленно из-за настроек безопасности.

Чтобы обойти это ограничение загрузки и установить APK файлы из неизвестных источников. Перейдите в «Настройки» → «Безопасность» и после установите флажок Устанавливать из неизвестных источников .
Существует вероятность, что файл APK не откроется на вашем андроиде, попробуйте просмотреть его с помощью файлового менеджера, такого как Astro File Manager или ES File Explorer Manager.
Откройте файл APK на Windows
Вы можете открыть файл APK на ПК, используя Android Studio или BlueStacks. Например, в случае использования BlueStacks перейдите на вкладку «Мои приложения» и выберите «Установить apk» в правом нижнем углу окна.
Откройте файл APK на Mac
ARC Welder – это расширение Google Chrome, предназначенное для тестирования приложений Android в ОС Chrome, но оно работает с любой ОС. Это означает, что вы можете открыть APK на вашем Mac или Windows, если это приложение внедрено в программу Chrome.
Откройте файл APK на iOS
Вы не cможете открывать или устанавливать файлы APK на гаджет iOS (iPhone и iPad) в свете того факта, что файл работает совершенно другим образом по сравнению с приложениями, используемыми на этих гаджетах, и эти две платформы не совместимы.

Как работать с файлами APK
- Никогда не открывайте APK файлы с сайтов, которым вы не доверяете. Делая так, вы можете установить вредоносное приложение.
- Конфигурация файла APK получена из файла архива Java или JAR.
- Для сжатия данных APK-файл использует метод, подобный тому, который используется в ZIP-файле.
- APK-файл похож на MSI-файл для Windows, DMG для Mac OS и IPA для iOS.
Чтобы открыть файл APK и просмотреть отдельные файлы из него вы можете использовать приложение, которое относится к отдельной группе файлов. Часть ресурсов, таких как изображения, видео и файлы XML, может быть эффективно просмотрена с помощью ваших стандартных программ для Windows или Mac. Тем не менее, некоторые, такие как компилированный исходный код, библиотеки и сертификаты, потребуют специальных приложений, ориентированных на эти расширения файлов.
Эффективный способ установить APK файл
Чтобы установить APK-файл на ваш Android-гаджет, выполните следующие действия:
- Откройте интернет-браузер на своем гаджете Android.
- Найдите страницу с APK-файлом, который вам нужно установить.
- Нажмите на файл APK, чтобы начать загрузку
- После завершения загрузки вы должны нажать Открыть , чтобы начать процедуру создания.
- Если в вашем гаджете Android отключено создание файлов APK, вы увидите краткое описание, в котором вы можете нажать на «Настройки», чтобы расширить возможности устройства по управлению файлами.
- Нажмите «Установить» в следующем окне, чтобы начать процедуру установки.
Эффективный способ конвертировать APK файл
APK-файлы специально предназначены для запуска в среде гаджетов, работающих под управлением операционной системы Android. По этой причине они не могут быть непосредственно преобразованы в файл, который может быть выполнен в другой рабочей среде. Вы не можете изменить файл APK на EXE для Windows или на файл IPA для iOS.

Вместе с тем, пока ещё возможно запустить файл Android APK на Windows и Mac OS. Для запуска файла APK в Windows и Mac OS вы можете использовать расширение Google Chrome Arc Welder, доступное в Chrome Web Store. Следуйте инструкциям в разделе «Mac OS и Windows OS» нашей статьи «Как установить APK-файл», чтобы запустить APK-файл на Windows или Mac OS.
В случае, если вам нужно запустить определенное приложение Android на гаджете iOS, самый идеальный подход – это найти аналогичное приложения для iOS и загрузить его из Apple App Store. Практически все производители мобильных приложений создают версии своих портативных приложений для Android и iOS.
Можно изменить APK на файлы ZIP или JAR, но это преобразование не является изменением как таковым. На данный момент APK и так представляет собой файл формата JAR/ZIP, и для его «преобразования» вам просто нужно изменить его расширение на JAR или ZIP. Начиная с этого момента, вы можете открыть получившийся файл, используя архиватор WinZip, WinRar, 7-Zip и некоторые другие, пригодные для открытия файла JAR или ZIP.
Посмотреть содержимое файла APK
APK-файл имеет формат, аналогичный ZIP-файлу, и может быть открыт с помощью приложений, которые могут открывать ZIP-файлы. Примеры таких приложений включают WinRAR, WinZIP, 7-Zip.
Если вы извлечёте данные из файла APK с помощью приложения для разархивирования, вы можете увидеть отдельные файлы из пакета APK с помощью приложений, подходящих для просмотра этого конкретного типа файлов.
Базовая структура файла APK
META-INF – это папка, содержащая метаданные о составе файла APK. Эта папка обычно содержит файлы MANIFEST.MF, CERT.RSA и CERT.SF.
MANIFEST.MF – это файл, который содержит основные данные о приложении. Эти данные потребляются рабочей системой Android. Помимо прочего, в нём содержатся: имя пакета приложения, полномочия требуемые приложением от системы, основные характеристики продукта и оборудования, требуемые приложением, и возможности приложения.
Компилированный код приложения помещается в папку «lib». Эта папка может содержать множество подпапок, каждая из которых будет иметь код для конкретных архитектур оборудования.
Ниже приведен список поддерживаемых папок:
- armeabi: код для процессоров на базе ARM
- armeabi-v7a: код для процессоров ARMv7 или выше
- arm64-v8a: код для процессоров ARMv8 arm64 или выше
- x86: код для процессоров x86
- x86_64: код для процессоров x86_64
- mips: код для процессоров MIPS
Файл формата APK — что это?
Файл APK является приложением, созданным для мобильной операционной системы Android. Данный формат файла относится к архивным исполняемым приложениям, разрабатывался файл расширением APK программистами компании Open Handset Alliance вместе с корпорацией Google. Android-смартфоны способны открыть файл, имеющий расширение .apk при помощи штатных средств, находящихся в системе Android. Каждое приложение Android скомпилировано и помещено в файл, который включает в себя программный код (его содержат .dex файлы), некоторые ресурсы и элементы, а также файл расширением .manifest.
Приложение для ОС Android может быть названо любым именем, однако расширение APK изменять нельзя. Популярный маркет Google Play хранит APK файлы в собственной системе, каждый зарегистрированный пользователь данного ресурса может устанавливать приложения на собственный смартфон или планшет. После установки приложений, можно открыть файл APK и запустить его в рамках мобильной платформы.
Файл в формате APK доступен для установки и в ручном режиме, потому как не является зашифрованным. Формат APK относят к группе формата ZIP-архиватора. Таким образом, приложение Android Package представляет из себя так называемый архив, предназначенный к исполнению на мобильных устройствах, работающих под управлением Android.
Многие разработчики создают Android-приложение при помощи специальной утилиты Google Android SDK. Пользователь может открыть APK и в системах Linux или Windows, для этого потребуется наличие таких архиваторов, как WinRar, Corel WinZip либо 7-ZIP. В системе Mac OS, файл .apk открывается при помощи программы Apple Archive Utility.
![]()
Программы для работы с APK в Windows
BlueStacks
Google Android SDK
Genymotion
![]()
Mac
Google Android SDK
Genymotion
BlueStacks
![]()
Linux
Google Android SDK
Genymotion
![]()
Android
Google Android
Решение проблем с файлами APK
Наиболее распространенная проблема — файл не открывается. Мы подготовили набор программ, с помощью которых вы гарантированно сможете открыть нужный файл в вашей операционной системе.
Иногда просто открыть файл — недостаточно. Если вам нужно его отредактировать — скачайте одну из бесплатных программ:
Если вам необходимо создать файл «с нуля» воспользуйтесь одной из программ с нужным функционалом. Вы найдете несколько вариантов программ для различных платформ по ссылке ниже.
Видео форматы
Аудио форматы
Электронные книги
Текстовые форматы
Дисковые образы
Табличные данные
Растровые изображения
Векторные изображения
Резервное копирование
Raw
Сжатые файлы
Файлы данных
Базы
3D Изображения
CAD файлы
Файлы разработчиков
Зашифрованные файлы
Исполняемые форматы
Шрифты
Файлы игр
GIS, карты
Другие расширения
Форматы макетов
Форматы плагинов
Файлы настроек
Системные файлы
Веб форматы