close

Balíček aplikací pro Android

Přejít na navigaci Přejít na hledání
apk
Ikona formátu APK (2014-2019).png
Rozšíření ..apk, .xapk, .apks, .apkm
MIME typ application/vnd.android.package-archive
Vývojář Google
Typ formátu Balená aplikace
Obsahuje Android : Mobilní aplikace
Windows 11 : Desktopové aplikace pro WSA
Rozšířeno z SKLENICE

Android Package (APK) [1]  je formát souboru aplikace pro Android používaný operačním systémem Android a mnoha dalšími operačními systémy založenými na Androidu pro distribuci a instalaci mobilních aplikací , mobilních her a middlewaru .

Soubory APK lze generovat a podepisovat z balíčku Android App Bundle [2] .masyn

Přehled

Soubor APK je podobný jiným balíčkům aplikací , jako je APPX v systému Microsoft Windows nebo Deb v operačních systémech založených na Debianu. Chcete-li vytvořit soubor APK, program pro Android je nejprve zkompilován pomocí nástrojů, jako je Android Studio [3] nebo Visual Studio, a poté jsou všechny jeho části zabaleny do jednoho kontejnerového souboru. Soubor APK obsahuje veškerý propojený kód (jako jsou soubory .dex ) a také zdroje, podklady, certifikáty a soubor manifestu. Stejně jako v případě mnoha formátů souborů mohou mít soubory APK libovolný název, který si zvolíte, ale k rozpoznání souboru jako aplikace pro Android může být vyžadována přípona souboru [4] [5] [6] .

Většina implementací zabezpečení systému Android umožňuje uživatelům ručně instalovat soubory APK pouze poté, co povolili nastavení „Neznámé zdroje“, které umožňuje instalaci z jiných než důvěryhodných zdrojů, jako je Google Play . To se provádí s cílem zabránit nezkušeným uživatelům v různých třídách spywaru a trojských koní , které se maskují jako legitimní aplikace. Povolení funkce instalace z neznámých zdrojů lze provést z mnoha důvodů, například během vývoje aplikace, instalace aplikací, které nejsou v obchodě, nebo instalace starší verze existující aplikace [7] .

Použití na jiných operačních systémech

Na akci během oznámení Windows 11 v červnu 2021 Microsoft předvedl nový Windows Subsystém pro Android ( Windows Subsystem for Android, WSA ), který implementuje podporu pro Android Open Source Project (AOSP) a umožní uživatelům spouštět aplikace pro Android . na Windows. Microsoft potvrdil, že uživatelé budou moci stahovat aplikace pro Android (neoficiálně vydané) a také je instalovat [8] .

Obsah zabalené aplikace

Soubor APK je archiv ZIP , který obvykle obsahuje následující soubory a adresáře:

  • adresář META-INF:
    • MANIFEST.MF: soubor manifestu
    • Certifikát aplikace.
    • CERT.SF: Seznam zdrojů a SHA-1 podpis odpovídajících řetězců v MANIFEST.MF; Například:
      Podpisová verze: 1.0
      Vytvořeno: 1.0 (Android)
      SHA1-Digest-Manifest: wxqnEAI0UA5nO5QJ8CGMwjkGGWE=
      ...
      Název: res/layout/exchange_component_back_bottom.xml
      SHA1-Digest: eACjMjESj7Zkf0cBFTZ0nqWrt7w=
      Název: res/drawable-hdpi/icon.png
      SHA1-Digest: DGEqylP8W0n0iV/ZzBx3MW0WGCA=
      
  • lib: adresář obsahující zkompilovaný kód závislý na platformě; lib je rozdělena do několika podadresářů:
    • armeabi-v7a: zkompilovaný kód pouze pro všechny procesory založené na ARMv7 a vyšší
    • arm64-v8a: zkompilovaný kód pouze pro všechny procesory založené na ARMv8 arm64 a vyšší [9]
    • x86: zkompilovaný kód pouze pro procesory x86
    • x86_64: zkompilovaný kód pouze pro procesory x86-64
    • mipsa armeabizastaralé od NDK r17 [10] [11]
  • res: adresář obsahující prostředky nezkompilované do resources.arsc (viz níže).
  • assets: adresář obsahující prostředky aplikace, které lze načíst pomocí AssetManager.
  • AndroidManifest.xml: Volitelný soubor manifestu Android, který popisuje název, verzi, oprávnění a knihovny aplikace. Tento soubor může být v binárním formátu XML pro Android, který lze převést na text XML čitelný pro člověka pomocí nástrojů, jako je AXMLPrinter2, apktool nebo Androguard.
  • classes.dex: Třídy kompilované do formátu spustitelného souboru Dalvik, kterému rozumí virtuální stroj Dalvik a běhové prostředí Android .
  • resources.arsc: Soubor obsahující předkompilované zdroje, jako je binární XML.

Poznámky

  1. Základy  aplikace . android vývojáři . Staženo 3. prosince 2018. Archivováno z originálu dne 21. listopadu 2020.
  2. Peters. Google ustupuje od souborů APK v Obchodě  Play . The Verge (30. června 2021). Získáno 15. srpna 2021. Archivováno z originálu dne 4. srpna 2021.
  3. Application Studio  . android vývojáři . Získáno 11. září 2021. Archivováno z originálu dne 12. září 2021.
  4. Uvnitř Android Application Framework (video). Weby Google . Získáno 11. září 2021. Archivováno z originálu dne 24. prosince 2011.
  5. Hatem Ben Yacoub. Tipy: Jak nainstalovat apk soubory na Android Emulator . Open Ha Magazine (20. dubna 2018). Získáno 17. července 2021. Archivováno z originálu dne 26. května 2012.
  6. Struktura souborů balíčku Android (APK) . Telefon SDN . OPhone Software Developer Network (17. listopadu 2010). Archivováno z originálu 8. února 2011.
  7. Neznámé zdroje: Vše, co potřebujete vědět! . Android Central (27. července 2018). Získáno 11. září 2021. Archivováno z originálu 1. září 2021.
  8. Parmar. Microsoft potvrzuje, že aplikace pro Android poběží na všech počítačích s Windows 11 . Nejnovější Windows (27. června 2021). Získáno 28. června 2021. Archivováno z originálu dne 27. června 2021.
  9. Správa ABI | android vývojáři . developer.android.com _ Staženo : 2018-06-16.11 . 2022 . Archivováno 31. května 2019.
  10. Android ABI | Android  NDK . android vývojáři . — "Poznámka: NDK v minulosti podporovalo ARMv5 (armeabi) a 32bitové a 64bitové MIPS, ale podpora těchto ABI byla v NDK r17 odstraněna." Získáno 14. srpna 2020. Archivováno z originálu dne 8. dubna 2019.
  11. Dan. Changelog r17  (anglicky) . GitHub (5. září 2018). - "Podpora pro ARMv5 (armeabi), MIPS a MIPS64 byla odstraněna. Pokus o sestavení kteréhokoli z těchto ABI povede k chybě.". Získáno 14. srpna 2020. Archivováno z originálu dne 28. srpna 2020.