Android-applicatiepakket
| APK | |
|---|---|
|
|
|
| Verlenging |
. |
| MIME -type |
application/vnd.android.package-archive |
| Ontwikkelaar | |
| Formaattype | Verpakte toepassing: |
| bevat |
Android : Mobiele apps Windows 11 : Desktop-apps voor WSA |
| Uitgebreid van | KAN |
Android Package (APK) [1] is een Android-toepassingsbestandsindeling die wordt gebruikt door het Android-besturingssysteem en vele andere op Android gebaseerde besturingssystemen voor het distribueren en installeren van mobiele apps , mobiele games en middleware .
APK-bestanden kunnen worden gegenereerd en ondertekend vanuit de Android App Bundle [2] .masyn
Overzicht
Een APK is vergelijkbaar met andere applicatiepakketten zoals APPX op Microsoft Windows of Deb op op Debian gebaseerde besturingssystemen. Om een APK-bestand te maken, wordt eerst een Android-programma gecompileerd met behulp van tools zoals Android Studio [3] of Visual Studio, en vervolgens worden alle onderdelen ervan in een enkel containerbestand verpakt. Een APK bevat alle gekoppelde code (zoals .dex-bestanden ), evenals bronnen, activa, certificaten en een manifestbestand. Zoals het geval is met veel bestandsindelingen, kunnen APK-bestanden elke gewenste naam hebben, maar de bestandsextensie [4] [5] [6] kan nodig zijn om het bestand als een Android-applicatie te herkennen .
Bij de meeste Android-beveiligingsimplementaties kunnen gebruikers alleen APK-bestanden handmatig installeren nadat ze de instelling "Onbekende bronnen" hebben ingeschakeld, waardoor installatie vanaf andere bronnen dan vertrouwde bronnen zoals Google Play mogelijk is . Dit wordt gedaan om te voorkomen dat onervaren gebruikers van verschillende soorten spyware en Trojaanse paarden zich voordoen als legitieme toepassingen. Het inschakelen van de functie installeren vanaf onbekende bronnen kan om vele redenen worden gedaan, zoals tijdens app-ontwikkeling, om apps te installeren die niet in de winkel zijn, of om een oudere versie van een bestaande app te installeren [7] .
Gebruik op andere besturingssystemen
Tijdens een evenement tijdens de aankondiging van Windows 11 in juni 2021, demonstreerde Microsoft een nieuw Windows-subsysteem voor Android ( Windows-subsysteem voor Android, WSA ), dat ondersteuning voor het Android Open Source Project (AOSP) implementeert en gebruikers in staat stelt om Android-applicaties uit te voeren op Windows. Microsoft heeft bevestigd dat gebruikers Android-sideload-apps (niet officieel vrijgegeven) kunnen downloaden en installeren [8] .
Inhoud van een pakketapplicatie
APK-bestand is een ZIP - archief dat meestal de volgende bestanden en mappen bevat:
- Directory
META-INF:MANIFEST.MF: manifest bestand- Aanvraag certificaat.
CERT.SF: Lijst van bronnen en SHA-1 handtekening van corresponderende strings in MANIFEST.MF; Bijvoorbeeld:Handtekening-versie: 1.0 Gemaakt door: 1.0 (Android) SHA1-Digest-manifest: wxqnEAI0UA5nO5QJ8CGMwjkGGWE= ... Naam: res/layout/exchange_component_back_bottom.xml SHA1-Digest: eACjMjESj7Zkf0cBFTZ0nqWrt7w= Naam: res/drawable-hdpi/icon.png SHA1-Digest: DGEqylP8W0n0iV/ZzBx3MW0WGCA=
lib: directory met gecompileerde platformafhankelijke code; lib is verdeeld in verschillende submappen:armeabi-v7a: alleen gecompileerde code voor alle processors op basis van ARMv7 en hogerarm64-v8a: alleen gecompileerde code voor alle processors op basis van ARMv8 arm64 en hoger [9]x86: gecompileerde code alleen voor x86 -processorsx86_64: gecompileerde code alleen voor x86-64 -processorsenmipsverouderd sinds NDK r17 [10] [11]armeabi
res: map met bronnen die niet zijn gecompileerd in resources.arsc (zie hieronder).assets: directory met applicatie-assets die kunnen worden opgehaald metAssetManager.AndroidManifest.xml: een optioneel Android-manifestbestand dat de naam, versie, machtigingen en bibliotheken van de toepassing beschrijft. Dit bestand kan in Android binaire XML-indeling zijn, die kan worden geconverteerd naar voor mensen leesbare XML-tekst met behulp van tools zoals AXMLPrinter2, apktool of Androguard.classes.dex: Klassen gecompileerd in een uitvoerbaar dalvik-bestandsformaat dat begrepen wordt door de virtuele Dalvik-machine en de Android-runtime .resources.arsc: Een bestand met vooraf gecompileerde bronnen, zoals binaire XML.
Opmerkingen
- ↑ Basisprincipes van de toepassing . Android-ontwikkelaars . Ontvangen 3 december 2018. Gearchiveerd van het origineel op 21 november 2020.
- Pieters . Google stapt af van APK's in de Play Store . The Verge (30 juni 2021). Ontvangen op 15 augustus 2021. Gearchiveerd van het origineel op 4 augustus 2021.
- ↑ Applicatiestudio . _ Android-ontwikkelaars . Ontvangen op 11 september 2021. Gearchiveerd van het origineel op 12 september 2021.
- ↑ Binnen het Android Application Framework (video). Google-sites . Ontvangen 11 september 2021. Gearchiveerd van het origineel op 24 december 2011.
- Hatem Ben Yacoub. Tips: Hoe apk-bestanden op Android Emulator te installeren . Open Ha Magazine (20 april 2018). Ontvangen 17 juli 2021. Gearchiveerd van het origineel op 26 mei 2012.
- ↑ De structuur van Android Package (APK)-bestanden . Telefoon SDN . OPhone Software Developer Network (17 november 2010). Gearchiveerd van het origineel op 8 februari 2011.
- ↑ Onbekende bronnen: alles wat u moet weten! . Android Central (27 juli 2018). Ontvangen op 11 september 2021. Gearchiveerd van het origineel op 1 september 2021.
- Parmar . Microsoft bevestigt dat Android-apps op alle Windows 11-pc's zullen draaien . Windows Nieuwste (27 juni 2021). Ontvangen op 28 juni 2021. Gearchiveerd van het origineel op 27 juni 2021.
- ↑ ABI-beheer | Android-ontwikkelaars . ontwikkelaar.android.com _ Ontvangen : 2018-06-16.11 . 2022 . Gearchiveerd 31 mei 2019.
- ↑ Android ABI's | Android NDK . Android-ontwikkelaars . — "Opmerking: in het verleden ondersteunde de NDK ARMv5 (armeabi) en 32-bits en 64-bits MIPS, maar de ondersteuning voor deze ABI's werd verwijderd in NDK r17." Ontvangen 14 augustus 2020. Gearchiveerd van het origineel op 8 april 2019.
- Dan . Changelog r17 (Engels) . GitHub (5 september 2018). - "Ondersteuning voor ARMv5 (armeabi), MIPS en MIPS64 is verwijderd. Als u een van deze ABI's probeert te bouwen, resulteert dit in een fout.". Ontvangen 14 augustus 2020. Gearchiveerd van het origineel op 28 augustus 2020.