J'ai construit mon projet en utilisant le nouveau format Android App Bundle. Avec les fichiers APK, je peux télécharger l'APK sur mon appareil, l'ouvrir et installer immédiatement l'application. J'ai téléchargé mon application sous forme de bundle (format .aab) et mon Nexus 5X sous Android 8.1 ne peut pas ouvrir le fichier. Existe-t-il un moyen d'installer les AAB sur les appareils de la même manière pratique que les APK?
android
android-app-bundle
prfarlow
la source
la source
Réponses:
Réponse courte:
Pas directement.
Réponse plus longue:
Les bundles d'applications Android sont un format de publication. Les appareils Android nécessitent des
.apk
fichiers pour installer les applications.Le PlayStore ou toute autre source à partir de laquelle vous installez doit extraire les apks du bundle, signer chacun d'eux, puis les installer en fonction de l'appareil cible.
La conversion de .aab en .apk se fait via bundletool .
Vous pouvez utiliser le partage d'application interne pour télécharger une version déboguable de votre application sur le Play Store et la partager avec les testeurs.
la source
apks
fichier.En installant l'aab directement à partir de l'appareil, je n'ai pas trouvé de moyen pour cela.
Mais il existe un moyen de l'installer via votre ligne de commande en utilisant la documentation suivante Vous pouvez installer apk sur un appareil via BundleTool
Selon le commentaire de "@Albert Vila Calvo", il a noté que pour installer bundletools en utilisant HomeBrew, utilisez
brew install bundletool
Vous pouvez maintenant installer des apks d'extrait à partir du fichier aab et l'installer sur un appareil
Extraction de fichiers apk via la commande suivante
Arguments:
Ensuite, vous aurez un fichier avec l'extension .apks.Vous devez maintenant l'installer sur un appareil
Arguments:
la source
brew install bundletool
. Ensuite, exécutez simplement les commandes comme celle-ci:bundletool build-apks --bundle=./app/release/app.aab --output=./app/release/app.apks
--key-pass=pass:
... est obligatoire, mais étrangement un mot de passe est incorrect, je dois donc le saisir manuellement. Après... install-apks --adb=...
avoir écrit: «Les APK ont été extraits dans le répertoire: ...», mais ce dossier n'existe pas et il ne s'installe pas sur l'appareil.C:\Users\Aterr\Desktop\hack>java -jar "C:\Users\Aterr\Desktop\hack\bundletool-all-0.10.3.jar" install-apks --adb="C:\Users\Aterr\AppData\Local\Android\Sdk\platform-tools\adb.exe" --apks="C:\Users\Aterr\Desktop\hack\extractedapks.apks"
Vous ne pouvez pas installer paquet app
[NAME].aab
directement à l' appareil Android , car il est le format d' édition, mais il y a moyen d'extraire le nécessaire àapk
partirbundle
et l' installer à l' appareil vous, le processus est le suivantjava -jar bundletool.jar build-apks --bundle=bundleapp.aab --output=out_bundle_archive_set.apks
out_bundle_archive_set.apks
, renommez-le simplementout_bundle_archive_set.zip
et extrayez le fichier zip, sautez dans le dossierout_bundle_archive_set > standalones
, où vous verrez une liste de tous les apksIl y a la référence des développeurs Android pour le lien des outils de bundle
la source
Pour Mac:
brew install bundletool bundletool build-apks --bundle=./app.aab --output=./app.apks bundletool install-apks --apks=app.apks
la source
Si vous souhaitez installer apk de votre aab sur votre appareil à des fins de test, vous devez modifier la configuration avant de l'exécuter sur l'appareil connecté.
Cela installera un apk directement sur l'appareil connecté à partir de l'aab.
la source
Non, si vous déboguez une application sans d'autres utilisateurs, utilisez le menu Build> Build APK (s) dans Android Studio ou exécutez-le dans votre appareil / émulateur, la version de débogage apk s'installera automatiquement. Si vous déboguez une application avec d'autres utilisateurs, utilisez le menu Créer> Générer l'APK signé .... Si vous souhaitez publier la version bêta, utilisez le Google Play Store. Vos fichiers APK seront dans
app\build\outputs\apk\debug
et desapp\release
dossiers.la source
Oui, c'est possible Vous devez utiliser cet outil Google: https://github.com/google/bundletool
la source
Utilisez (sous Linux): cd android ./gradlew assemblyRelease | assemblyDebug
Un APK non signé est généré pour chaque cas (pour le débogage ou le test)
REMARQUE: sous Windows, remplacez l'exécutable gradle par gradlew.bat
la source