web-dev-qa-db-de.com

Installieren Sie das Android App Bundle auf dem Gerät

Ich habe mein Projekt mit dem neuen Android App Bundle-Format erstellt. Mit APK-Dateien kann ich das APK auf mein Gerät herunterladen, es öffnen und die App sofort installieren. Ich habe meine App als Bundle (AAB-Format) heruntergeladen und mein Nexus 5X mit Android 8.1 kann die Datei nicht öffnen. Gibt es eine Möglichkeit, AABs auf dieselbe Weise wie APKs auf Geräten zu installieren? 

10
prfarlow

Kurze Antwort: Nein

Längere Antwort:

Android App Bundles ist ein Veröffentlichungsformat. Android-Geräte benötigen APK-Dateien, um Anwendungen zu installieren.

Der PlayStore oder eine andere Quelle, von der aus Sie installieren, muss APKs aus dem Bundle extrahieren, jede signieren und dann spezifisch für das Zielgerät installieren.

Die Konvertierung von .aab in .apk erfolgt über bundletool

15
keyboardsurfer

Wenn ich das aab direkt vom Gerät aus installiere, habe ich keinen Weg dafür gefunden. Es gibt jedoch eine Möglichkeit, es über die Befehlszeile zu installieren: Dokumentation Sie können apk über BundleTool auf einem Gerät installieren. Sie können jetzt extrahierte apks aus einer AB-Datei installieren und installieren es an ein Gerät

Extrahieren von APK-Dateien mit dem nächsten Befehl

Java-jar bundletool-all-0.3.3.jar build-apks --bundle = bundle.aab --output = app.apks --ks = mein-release-key.keystore --ks-key-alias = alias - -ks-pass = pass: Passwort

Argumente:
- Bundle -> Android Bundle .aab-Datei
- Ausgabe -> Ziel und Dateiname für die generierte APK-Datei
- ks -> Keystore-Datei zum Generieren des Android Bundle
- ks-key-alias -> Alias ​​für die Keystore-Datei
- ks-pass -> Passwort für Alias-Datei (Bitte beachten Sie das Präfix 'pass' vor dem Passwortwert)

Dann haben Sie eine Datei mit der Erweiterung .apks. Nun müssen Sie sie auf einem Gerät installieren

Java -jar bundletool-all-0.6.0.jar install-apks --adb =/Android-sdk/plattform-tools/adb --apks = app.apks

Argumente:
- adb -> Pfad zur ADB-Datei
- apks -> Die Apks-Datei muss installiert sein

24

Verwenden Sie (unter Linux): cd Android ./gradlew assemblyRelease | assemblyDebug

Für jeden Fall wird eine nicht signierte APK generiert (zum Debuggen oder Testen)

HINWEIS: Ersetzen Sie unter Windows die ausführbare Datei gradle für gradlew.bat

0
Eddie Ruiz

Ja, es ist möglich. Sie müssen dieses Google-Tool verwenden: https://github.com/google/bundletool

0
Minis

Nein, wenn Sie eine App debuggen, ohne dass andere Benutzer das Menü Build> Build APK (s) in Android Studio verwenden, oder führen Sie sie in Ihrem Gerät/Emulator aus. Dann wird die debug release apk automatisch installiert. Wenn Sie eine App mit anderen debuggen, verwenden Sie Build> Generated Signed APK ... menu. Wenn Sie die beta-Version veröffentlichen möchten, verwenden Sie den Google Play Store. Ihre APKs befinden sich in den Ordnern app\build\outputs\apk\debug und app\release.

0
Gaspar

Sie können das App-Paket [NAME].aab nicht direkt auf dem Android-Gerät installieren, da es sich um ein Veröffentlichungsformat handelt. Es ist jedoch möglich, die erforderliche apk aus bundle zu extrahieren und auf Ihrem Gerät zu installieren

  1. App-Bundle von hier herunterladen
  2. führen Sie dies in Ihrem Terminal aus, 
Java -jar bundletool.jar build-apks --bundle=bundleapp.aab --output=out_bundle_archive_set.apks
  1. Im letzten Schritt wird eine Datei mit dem Namen out_bundle_archive_set.apks generiert. Benennen Sie sie einfach in out_bundle_archive_set.Zip um und extrahieren Sie die ZIP-Datei. Springen Sie in den Ordner out_bundle_archive_set > standalones, in dem Sie eine Liste aller apks sehen 
0
Ali Tamoor