APK (формат файлу)
![]() | |
Розширення файлу: | .APK |
---|---|
MIME-тип: | application/vnd.android.package-archive |
Тип формату: | система управління пакетами, архів |
Контейнер для: | пакет прикладних програм |
Розширений з: | .JAR |
APK (англ. Android Package) — формат архівних файлів-застосунків для «Android». Кожний застосунок «Android» скомпільовано і упаковано в один файл, який включає в себе весь код програми (.DEX
) файли), ресурси, активи і файл .manifest
. Файл програми може мати будь-яке ім'я, але розширення повинно бути .apk
. Наприклад: myAppFile.apk
.
Файли з даними розширенням зберігаються в магазині «Google Play», і завантажуються з його допомогою в смартфон або планшетний комп'ютер для їх використання, або встановлюються користувачем вручну на пристрої.
Структура файлу
APK-файл — це звичайний zip архів, який частіше складається з наступних тек та файлів:
META-INF
— тека, що містить:MANIFEST.MF
— файл маніфесту;CERT.RSA
— сертифікат застосунку.CERT.SF
— перелік ресурсів та їхніх SHA-1 хешів у повній відповідності з переліком з файлуMANIFEST.MF
.
- Наприклад, початок файлу MANIFEST.MF
Manifest-Version: 1.0 Built-By: Generated-by-ADT Created-By: Android Gradle 2.2.1 Name: assets/www/index.html SHA1-Digest: xFthlLxvbJtTqIJv4fBb46kA4eA= Name: res/drawable-port-ldpi-v4/screen.png SHA1-Digest: 0xgQIHIbfOrpLeNb8Awy2KsX/rk= Name: AndroidManifest.xml SHA1-Digest: aO9ANGSRIZO0m75kd0qvEzgDdv8=
- Початок відповідного йому файлу CERT.SF
Signature-Version: 1.0 X-Android-APK-Signed: 2 SHA1-Digest-Manifest: M9dYzdrAaHXitAfVmJy1WHSQBDE= Created-By: 1.0 (Android) Name: assets/www/index.html SHA1-Digest: xFthlLxvbJtTqIJv4fBb46kA4eA= Name: res/drawable-port-ldpi-v4/screen.png SHA1-Digest: 0xgQIHIbfOrpLeNb8Awy2KsX/rk= Name: AndroidManifest.xml SHA1-Digest: aO9ANGSRIZO0m75kd0qvEzgDdv8=
lib
— тека, що складається з підтек, які мають назву сімейств CPU-платформ,в яких знаходиться відкомпільований для них код:armeabi
— скомпільований код для всіх ARM процесорів;armeabi-v7a
— скомпільований код для всіх ARMv7 та вище процесорів;arm64-v8a
— скомпільований код для всіх ARMv8 та вище процесорів;[1]x86
— скомпільований код для x86 процесорів;x86_64
— скомпільований код для x86 64 процесорів;mips
— скомпільований код для MIPS процесорів.
res
— тека із ресурсами (файлами), що не вкомпільовані в файлresources.arsc
.assets
— тека із ресурсами (файлами), які можуть бути отримані черезAssetManager
.AndroidManifest.xml
— важливий файл, це маніфест всього застосунку, який описує назву, версію, права доступу, посилання на бібліотечні файли цього мобільного застосунку.[2] Цей файл може бути в форматі бінарного XML, який може бути перетворено в читабельний вигляд засобами AXMLPrinter2 [Архівовано 23 грудня 2015 у Wayback Machine.], apktool [Архівовано 15 липня 2018 у Wayback Machine.] або Androguard [Архівовано 20 грудня 2015 у Wayback Machine.].classes.dex
— скомпільовані класи в dex форматі для запуску в віртуальній машині Dalvik або в Android Runtime.resources.arsc
— файл, який складається з компілювальних в нього ресурсів, наприклад, бінарного XML.
Примітки
Посилання
- Hatem Ben Yacoub (19 січня 2008). Tips: How to install apk files on Android Emulator. Open Handset Magazine. Архів оригіналу за 26 травня 2012. Процитовано 30 серпня 2014.
- п
- о
- р
Інструменти для програмування |
| ||||
---|---|---|---|---|---|
Інтегроване середовище розробки (ІСР) | |||||
Мови, бази даних | |||||
Віртуальна реальність (ВР) |
| ||||
Події, спільноти |
|
Pixel | |
---|---|
Nexus | |
Play edition |
|
процеси
- Процес увімкнення
- Режим recovery
- TWRP
- ClockworkMod
- Fastboot
- Карти Google
- Сервіси Google Play
- Google (пошуковик)
інтерфейси
- Застосунки Google
- Список дистрибутивів Android
- Список функцій Android