Android alkalmazáscsomag
Az Android Package (APK) [1] egy Android-alkalmazás fájlformátuma , amelyet az Android operációs rendszer és sok más Android-alapú operációs rendszer használ mobilalkalmazások , mobiljátékok és köztes szoftverek terjesztésére és telepítésére .
Az APK-fájlok az Android App Bundle csomagból [2] .masyn
generálhatók és írhatók alá
Áttekintés
Az APK hasonló más alkalmazáscsomagokhoz , mint például az APPX Microsoft Windows rendszeren vagy a Deb Debian-alapú operációs rendszereken. Az APK-fájl létrehozásához először egy Android-programot kell lefordítani olyan eszközökkel, mint az Android Studio [3] vagy a Visual Studio, majd minden része egyetlen konténerfájlba kerül. Az APK tartalmazza az összes linkelt kódot (például .dex fájlokat ), valamint erőforrásokat, eszközöket, tanúsítványokat és egy jegyzékfájlt. Sok fájlformátumhoz hasonlóan az APK-fájloknak tetszőleges neve lehet, de előfordulhat, hogy a fájlkiterjesztés [4] [5] [6] szükséges ahhoz, hogy a fájlt Android-alkalmazásként ismerje fel .
A legtöbb Android biztonsági megvalósítás csak azután teszi lehetővé a felhasználók számára, hogy manuálisan telepítsenek APK-fájlokat, miután engedélyezték az „Ismeretlen források” beállítást, amely lehetővé teszi a nem megbízható forrásokból, például a Google Playről történő telepítést . Ez azért történik, hogy megakadályozzák a tapasztalatlan felhasználókat a legális alkalmazásnak álcázó kémprogramok és trójai programok különböző osztályaitól . Az ismeretlen forrásból történő telepítés engedélyezése számos okból történhet, például az alkalmazásfejlesztés során, olyan alkalmazások telepítéséhez, amelyek nincsenek meg az áruházban, vagy egy meglévő alkalmazás régebbi verzióját [7] .
Használat más operációs rendszereken
A Windows 11 bejelentésekor 2021 júniusában a Microsoft egy új Windows-alrendszert mutatott be Androidhoz ( Windows Subsystem for Android, WSA ), amely támogatja az Android nyílt forráskódú projektet (AOSP), és lehetővé teszi a felhasználók számára Android-alkalmazások futtatását. Windows rendszeren. A Microsoft megerősítette, hogy a felhasználók letölthetik és telepíthetik is az Android sideload alkalmazásokat (nem hivatalosan kiadva) [8] .
Egy csomagolt alkalmazás tartalma
Az APK fájl egy ZIP archívum , amely általában a következő fájlokat és könyvtárakat tartalmazza:
- Könyvtár META-INF:
- MANIFEST.MF: manifest fájl
- Pályázati igazolás.
- CERT.SF: Erőforrások listája és a megfelelő karakterláncok SHA-1 aláírása a MANIFEST.MF-ben; Például:Aláírás-verzió: 1.0
Készítette: 1.0 (Android)
SHA1-Digest-Manifest: wxqnEAI0UA5nO5QJ8CGMwjkGGWE=
...
Név: res/layout/exchange_component_back_bottom.xml
SHA1-Digest: eACjMjESj7Zkf0cBFTZ0nqWrt7w=
Név: res/drawable-hdpi/icon.png
SHA1-Digest: DGEqylP8W0n0iV/ZzBx3MW0WGCA=
- lib: a lefordított platformfüggő kódot tartalmazó könyvtár; A lib több alkönyvtárra oszlik:
- armeabi-v7a: csak az összes ARMv7 és újabb alapú processzorokhoz lefordított kód
- arm64-v8a: csak az ARMv8 arm64 és újabb alapú processzorokhoz fordított kód [9]
- x86: csak x86 processzorokhoz fordított kód
- x86_64: csak x86-64 processzorokhoz fordított kód
- mipsés armeabiaz NDK r17 óta elavult [10] [11]
- res: olyan könyvtárat, amely nem az resources.arsc-be fordított erőforrásokat tartalmazza (lásd alább).
- assets: a segítségével lekérhető alkalmazáseszközöket tartalmazó könyvtár AssetManager.
- AndroidManifest.xml: Opcionális Android jegyzékfájl, amely leírja az alkalmazás nevét, verzióját, engedélyeit és könyvtárait. Ez a fájl lehet Android bináris XML formátumú, amely ember által olvasható XML szöveggé konvertálható olyan eszközökkel, mint az AXMLPrinter2, az apktool vagy az Androguard.
- classes.dex: Osztályok a Dalvik virtuális gép és az Android futtatókörnyezet által értelmezett dalvik futtatható fájlformátumba összeállított osztályokba .
- resources.arsc: Előre lefordított erőforrásokat, például bináris XML-t tartalmazó fájl.
Jegyzetek
- ↑ Alkalmazási alapok . android fejlesztők . Letöltve: 2018. december 3. Az eredetiből archiválva : 2020. november 21.
- ↑ Peters. A Google eltávolodik az APK-któl a Play Áruházban . The Verge (2021. június 30.). Letöltve: 2021. augusztus 15. Az eredetiből archiválva : 2021. augusztus 4..
- ↑ Application Studio . android fejlesztők . Letöltve: 2021. szeptember 11. Az eredetiből archiválva : 2021. szeptember 12.
- ↑ Az Android alkalmazási keretrendszeren belül (videó). Google Webhelyek . Letöltve: 2021. szeptember 11. Az eredetiből archiválva : 2011. december 24. (határozatlan)
- ↑ Hatem Ben Yacoub. Tippek: Az apk-fájlok telepítése az Android emulátoron . Nyitott Ha Magazin (2018. április 20.). Letöltve: 2021. július 17. Az eredetiből archiválva : 2012. május 26. (határozatlan)
- ↑ Az Android Package (APK) fájlok szerkezete . Telefon SDN . OPhone Software Developer Network (2010. november 17.). Archiválva az eredetiből 2011. február 8-án. (határozatlan)
- ↑ Ismeretlen források: Minden, amit tudnod kell! . Android Central (2018. július 27.). Letöltve: 2021. szeptember 11. Az eredetiből archiválva : 2021. szeptember 1. (határozatlan)
- ↑ Parmar. A Microsoft megerősítette, hogy az Android-alkalmazások minden Windows 11-es számítógépen futni fognak . Windows legújabb verziója (2021. június 27.). Letöltve: 2021. június 28. Az eredetiből archiválva : 2021. június 27. (határozatlan)
- ↑ ABI menedzsment | android fejlesztők . developer.android.com _ Letöltve : 2018-06-16.11 . 2022 . Archiválva : 2019. május 31. (határozatlan)
- ↑ Android ABI-k | Android NDK . android fejlesztők . — "Megjegyzés: Az NDK korábban támogatta az ARMv5-öt (armeabi), valamint a 32 bites és 64 bites MIPS-t, de ezen ABI-k támogatása megszűnt az NDK r17-ben." Letöltve: 2020. augusztus 14. Az eredetiből archiválva : 2019. április 8..
- ↑ Dan. Changelog r17 (angol) . GitHub (2018. szeptember 5.). - "Az ARMv5 (armeabi), MIPS és MIPS64 támogatása megszűnt. Ezen ABI-k bármelyikének létrehozására tett kísérlet hibát eredményez." Letöltve: 2020. augusztus 14. Az eredetiből archiválva : 2020. augusztus 28..