APK (Dateiformat)

Apk
APK format icon (2014-2019).png
Dateiname Erweiterung .apk, .xapk, .apks, .apkm
Internet -Medientyp
application/vnd.android.package-archive
Art des Formats Paketformat
Container für
Erweitert von KRUG

Das Android -Paket mit der Dateierweiterung apk[1] ist der Datei Format verwendet von der Android -Betriebssystemund eine Reihe anderer Android-basierter Betriebssysteme für die Verteilung und Installation von Mobile Apps, Handyspiele und Middleware. Es kann in beiden geschrieben werden Java oder Kotlin.

APK -Dateien können generiert und signiert werden Android App Bündel.[2]

Überblick

APK ist analog zu anderen Softwarepakete wie zum Beispiel Appx in Microsoft Windows, .App auf hap für Harmonyos oder ein Debian -Paket in Debian-Basierte Betriebssysteme. Um eine APK -Datei zu erstellen, wird ein Programm für Android zunächst mit einem Tool wie z. B. zusammengestellt Android Studio[3] oder Visual Studio Und dann werden alle Teile in eine Containerdatei verpackt. Eine APK -Datei enthält alle Code eines Programms (z. .dex Dateien), Ressourcen, Vermögenswerte, Zertifikate und Manifestdatei. Wie bei vielen Dateiformaten können APK -Dateien einen beliebigen Namen benötigen. Es kann jedoch erforderlich sein, dass der Dateiname in der Dateierweiterung endet, um als solche erkannt zu werden.[4][5][6]

Die meisten Android -Implementierungen ermöglichen es Benutzern, APK -Dateien nur manuell zu installieren, nachdem sie eine "unbekannte Quellen" eingestellt haben Google Play. Man kann dies aus vielen Gründen tun, z. B. während der Entwicklung von Apps, um Apps zu installieren, die nicht im Geschäft zu finden sind, oder um eine ältere Version einer vorhandenen App zu installieren.[7][8]

Verwendung auf anderen Betriebssystemen

Blackberry Limited Unterstützte Android 4.1 Jelly Bean Apps und bis durch Android -Laufzeit jetzt eingestellt Blackberry 10 bis zum Januar 2014 10.2.1 Firmware -Update.[9] Am 18. Juni 2014 kündigte Blackberry eine offizielle Beziehung zu Amazon.com, was dazu führte, dass das 10.3 aktualisiert wurde, um die zu bündeln Amazon Appstore.

Im Build 2015 hatte Microsoft auch eine angekündigt Android Laufzeitumgebung für Windows 10 Mobile bekannt als "Astoria", mit der Android -Apps in einer emulierten Umgebung mit minimalen Änderungen ausgeführt werden können und Zugriff auf Microsoft -Plattform -APIs wie z. Bing -Karten und XBox Live als nahezu Drop-In-Ersatz für Äquivalent Google Mobile Services. Google Mobile Services und bestimmte Kern -APIs wären nicht verfügbar, und Apps mit "tiefen Integration in Hintergrundaufgaben" sollen die Umgebung schlecht unterstützen.[10][11]

Am 25. Februar 2016, nachdem es bereits im November 2015 verzögert hatte,[12][13] Microsoft kündigte an, dass "Astoria" zurückgestellt werden würde, und argumentiert, dass es für das native Windows Bridge -Toolkit überflüssig sei, da iOS bereits ein Hauptziel für die Entwicklung der mobilen App ist. Das Unternehmen förderte auch die Verwendung von Produkten von Xamarin (die sie am Vortag erworben hatten) für die Entwicklung von Apps mit mehreren Plattform C# Programmiersprache stattdessen.[14][15] Teile von Astoria wurden als Grundlage für die verwendet Windows -Subsystem für Linux (WSL) Plattform auf der PC -Version von Windows 10.[16]

Bei der Windows 11 Ankündigungsveranstaltung im Juni 2021, Microsoft präsentierte das neue Windows -Subsystem für Android (WSA), die die Unterstützung für die ermöglichen Android Open Source -Projekt (Aosp) und ermöglicht den Benutzern das Ausführen Android Apps auf ihrem Windows -Desktop. Microsoft bestätigte Benutzer können Android-Apps auf Windows ablegen und es wäre möglich, APK-Dateien zu installieren, die von Quellen von Drittanbietern heruntergeladen wurden.[17]

Benutzer konnten WSA beim Start nicht verwenden[wenn?] mit Windows Insidern in den USA getestet werden, für eine globale Veröffentlichung im Jahr 2022.

Huawei veröffentlichte sein proprietäres Betriebssystem Harmonyos Am 9. August 2019 wurde am 2. Juni 2021 für Smart TVS zuerst und später für Telefone und Tablets mit Harmonyos 2.0 gestartet. Harmonyos unter dem Linux Das Modul des Multi-Kernel-Systems ist mit älteren Android-Apps unter dem Ark-Compiler unter dem neuen IoT Smart-Orient-Betriebssystem für Telefone und Tablets kompatibel. Das Unternehmen wird behauptet, die Fluenz von Android-Systemen um 24%, die Reaktionsgeschwindigkeit um 44%und die Glätte der Anwendung von Drittanbietern bis zu 60%zu verbessern. Darüber hinaus liegt das mit dem Arche Compiler optimierte Android -System in der Nähe von Apple's iOS Terminologie. Als Open -Source -Harmonyos -Modul, das für eingebettete intelligente Geräte erstellt wurde, ist OpenHarmony jedoch nicht mit Android -Apps kompatibel.[18]

Jingos-Entwickler veröffentlichten Jingos, die behauptet, "die weltweit erste Linux-Distribution im iPados-Stil" zu sein. Die Tablet-freundliche Linux-Distribution wurde im März 2021 auf den Markt gebracht. Sie können sowohl Linux-Apps als auch Android-Apps ausführen. Es ist so angepasst, dass es auf natürliche Weise mit Touchscreen, Stylus, Tastatur und Trackpad ausgeführt wird, was es zu einem "konvergenten" Linux -Betriebssystem macht.[19]

Waydroid ist ein Containeransatz, der von einem Box -Container neu geschrieben wurde, um eine Android -Umgebung in einem Linux -System mit dem zusätzlichen Vorteil eines vollständigen Hardwarezugriffs zu erhalten. Mit dem Container können Sie Android -Apps auf Linux -basierten Telefonen wie ausführen Ubuntu TouchPostmarktos über ein Linux -Terminal, jedoch werden jedoch nicht alle Linux -basierten Betriebssysteme unterstützt. Der Open -Source -Software -Container bringt im Grunde genommen ein vollständiges Android -Betriebssystem in einen Container ein, der auf Linux -Geräten ausgeführt werden kann, sodass Benutzer APK -Dateien installieren und Android -Apps aus einer Linux -Hostumgebung ausführen können.

Am 13. September 2021, Huawei startete ihre eigene App Engine -Lösung in ihrem 1+8N -Ökosystem, das Android -Apps und Spielen von Huawei's ermöglicht AppGallery auf Huawei -PCs und Laptops betrieben werden. Mit diesem Plugin können Sie Apps und Spiele direkt auf Ihrem Huawei -PC -Gerät herunterladen und spielen. Sie können diese Apps über Huawei AppGallery -Smartphone -Apps auf einem großen Bildschirm zugreifen. Die Huawei-App-Engine unterstützt den Multi-Window-Modus. Sie können mehrere Android-Apps gleichzeitig auf demselben Bildschirm ausführen. Das überraschende Element dieser Nachricht umfasst die Unterstützung des Ausführens und Installierens von APK -Dateien direkt vom Datei -Explorer.[20]

Google plant, seine eigene Art und Weise einzuführen, Android -Apps im Jahr 2022 auf Windows auszuführen.[21]

Packungsinhalt

Eine APK -Datei ist eine Archiv Das enthält normalerweise die folgenden Dateien und Verzeichnisse:

  • Meta-inf Verzeichnis:
    • Manifest.mf: das Manifestdatei
    • Das Zertifikat des Antrags.
    • Cert.sf: Die Liste der Ressourcen und a SHA-1 verdauen der entsprechenden Zeilen in der Manifest.mf -Datei; zum Beispiel:
      Signature-Version: 1.0 Created-By: 1.0 (Android) SHA1-Digest-Manifest: wxqnEAI0UA5nO5QJ8CGMwjkGGWE= ... Name: res/layout/exchange_component_back_bottom.xml SHA1-Digest: eACjMjESj7Zkf0cBFTZ0nqWrt7w= Name: res/drawable-hdpi/icon.png SHA1-Digest: dgeqylp8w0n0iv/ZZBX3MW0WGCA =
  • lib: Das Verzeichnis, das den kompilierten Code enthält, der plattformabhängig ist; Das Verzeichnis ist in mehr Verzeichnisse darin unterteilt:
    • Armeabi-V7A: kompilierter Code für alle ARMV7 und nur über den oberen basierten Prozessoren
    • ARM64-V8A: kompilierter Code für alle ARMV8 Nur ARM64 und über dem basierten Prozessoren[22]
    • x86: kompilierter Code für x86 Nur Prozessoren
    • x86_64: kompilierter Code für x86-64 Nur Prozessoren
    • MIPS und Armeabi, veraltet seit NDK R17[23][24]
  • res: Das Verzeichnis, das Ressourcen enthält, die nicht in Ressourcen zusammengestellt wurden.ARSC (siehe unten).
  • Vermögenswerte: Ein Verzeichnis, das Anwendungsvermögen enthält, das durch abgerufen werden kann Vermögensverwalter.
  • AndroidManifest.xml: Eine zusätzliche Android -Manifestdatei, die den Namen, die Version, die Zugriffsrechte, die Referenzbibliotheksdateien für die Anwendung beschreibt. Diese Datei kann in Android sein Binärer XML Dies kann in menschlich-lesbare Klartext XML mit Tools wie AxmlPrinter2, Apktool M oder Androguard umgewandelt werden.
  • classs.dex: Die in der zusammengestellten Klassen DEX -Dateiformat Ausgeführt von Android -Laufzeit (oder von Virtuelle Maschine Dalvik benutzt in Android 4.4 KitKat).
  • Ressourcen.arsc: Eine Datei mit vorkompilierten Ressourcen, z. B. beispielsweise binäre XML.

Siehe auch

Verweise

  1. ^ "Anwendungsgrundlagen". Android -Entwickler. Abgerufen 2018-12-03.
  2. ^ Peters, Jay (2021-06-30). "Google bewegt sich von APKs im Play Store weg". Der Verge. Abgerufen 2021-08-15.
  3. ^ "Anwendungsstudio". Android -Entwickler.
  4. ^ "Innerhalb des Android -Anwendungsrahmens" (Video). Google -Websites. 2008.
  5. ^ Hatem Ben Yacoub (20. April 2018). "Tipps: So installieren Sie APK -Dateien auf Android Emulator". Open HA Magazine. Archiviert von das Original Am 2012-05-21. Abgerufen 2021-07-17.
  6. ^ "Die Struktur von APK -Dateien (Android -Paket)". Ophone SDN. Ophone Software Developer Network. 17. November 2010. archiviert von das Original am 8. Februar 2011.
  7. ^ "Unbekannte Quellen: Alles, was Sie wissen müssen!". Android Central. 27. Juli 2018.
  8. ^ "APK -Dateierweiterung - Welche APK -Datei ist und wie öffnet sie sie?". Tipps überlaufen. Abgerufen 2021-11-12.
  9. ^ Michael, Kozlowski. "Mit Blackberry 10.2.1 Update können Sie APK -Dateien auf Ihrem Telefon installieren". Goodhereader. Goodhereader. Abgerufen 29. Januar, 2014.
  10. ^ "Wie funktioniert Android in Windows 10 für Telefone?". TechRadar Pro. Archiviert von das Original am 19. Mai 2015. Abgerufen 22. Mai, 2015.
  11. ^ "Microsoft bringt Android, iOS -Apps auf Windows 10". ARS Technica. 29. April 2015. Abgerufen 30. April, 2015.
  12. ^ "Microsoft bringt Android -Apps möglicherweise schließlich nicht zu Windows.". Der Verge. Vox Media. 16. November 2015. Abgerufen 16. November, 2015.
  13. ^ Collins, Katie (16. November 2015). "Microsoft drückt eine Pause auf Tool zum Portieren von Android -Apps auf Windows 10". CNET. CBS interaktiv.
  14. ^ "Microsoft bestätigt: Android-on-Windows Astoria Tech ist weg". ARS Technica. Conde nast. 25. Februar 2016. Abgerufen 25. Februar, 2016.
  15. ^ "Ein Update über die Entwicklermöglichkeit und Windows 10". Erstellen von Apps für Windows Blog. Microsoft. 25. Februar 2016. Abgerufen 25. Februar, 2016.
  16. ^ Bright, Peter (6. April 2016). "Warum Microsoft benötigt, um Windows -Linux -Software auszuführen". ARS Technica. Conde nast.
  17. ^ Parmar, Mayank (2021-06-27). "Microsoft bestätigt, dass Android -Apps auf allen Windows 11 -PCs ausgeführt werden.". Windows LineTal. Abgerufen 2021-06-28.
  18. ^ Amy, Sarkar. "Arche Compiler: Huaweis selbst entwickelter Android-Anwendungs ​​Compiler-erklärt". HC Newsroom. HC Newsroom. Abgerufen 28. April, 2019.
  19. ^ Sneddon, Joey. "Erster Blick: Treffen Sie die neue Linux -Distro, die vom iPad inspiriert ist.". omg! Ubuntu!. omg! Ubuntu!. Abgerufen 1. Februar 2021.
  20. ^ Li, Deng. "Huawei Mobile App Engine gestartet, Android -Apps und Spiele auf dem PC ausführen". HC Newsroom. HC Newsroom. Abgerufen 13. September, 2021.
  21. ^ Warren, Tom (2021-12-09). "Google bringt Android Games im Jahr 2022 zu Windows". Der Verge. Abgerufen 2021-12-13.
  22. ^ "ABI Management | Android -Entwickler". Entwickler.android.com. Abgerufen 16. Juni 2018.
  23. ^ "Android Abis | Android NDK". Android -Entwickler. Abgerufen 2020-08-14. Hinweis: Historisch gesehen unterstützte der NDK ARMV5 (Armeabi) und 32-Bit und 64-Bit MIPSDie Unterstützung für diese Abis wurde jedoch in NDK R17 entfernt.
  24. ^ Dan, Albert (5. September 2018). "Changelog R17". GitHub. Abgerufen 2020-08-14. Die Unterstützung für ARMV5 (Armeabi), MIPS und MIPS64 wurde entfernt. Versuch, diese zu bauen Abis wird zu einem Fehler führen.