Je sais comment installer le fichier apk dans l'émulateur par l'invite de commande et tout ça. Mais je voudrais savoir s'il est possible d'installer le même fichier apk dans plusieurs émulateurs en donnant un nom spécifique ? En fait, je dois tester un fichier apk sur plusieurs appareils et pour cela j'ai démarré plusieurs appareils. Je sais comment l'installer. Si tous les appareils sont ouverts, il ne sera pas installé. Il y a donc une alternative pour installer ce fichier apk en donnant l'identifiant de l'émulateur de l'appareil ou un nom spécifique ? Je vous remercie de m'aider si vous avez une idée à ce sujet. . . Je vous remercie.
- ADB Shell lorsque plusieurs périphériques (5 réponses )
Réponses
Trop de publicités?Étape 1 : Obtenir les identifiants de tous les appareils connectés
adb devices
Étape 2 : Installation sur un appareil particulier que vous souhaitez installer
adb -s deviceId install path+apk
Exemple :
Étape 1 :
C:\Android\android-sdks\platform-tools>adb devices
Liste des périphériques attachés émulateur-5554 périphérique 014FD87107021017
dispositif
Étape 2 :
C:\Android\android-sdks\platform-tools>adb -s 014FD87107021017 install C:\Users\
user\Documents\appname.apk
Utilisez les scripts suivants pour installer l'apk sur plusieurs appareils/émulateurs.
for SERIAL in $(adb devices | grep -v List | cut -f 1);
do adb -s $SERIAL install -r /path/to/product.apk;
done
Enlevez -r si vous ne réinstallez pas l'apk. Vous pouvez également remplacer "install -r /path/to/product.apk" par d'autres commandes adb, par exemple pour travailler sur un seul appareil.
Cela fonctionne pour moi sur des appareils réels, mais je pense que cela devrait également fonctionner pour les émulateurs.
Il est possible de lancer la commande d'installation simultanément sur tous les appareils connectés.
L'essentiel est de lancer adb
dans un processus séparé (&).
J'ai trouvé le script suivant pour lancer simultanément l'installation sur tous mes appareils connectés et finalement lancer l'application installée sur chacun d'entre eux :
#!/bin/sh
function install_job {
adb -s ${x[0]} install -r PATH_TO_YOUR_APK
adb -s ${x[0]} shell am start -n "com.example.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
}
#iterate over devices IP-addresses or serial numbers and start a job
while read LINE
do
eval x=($LINE)
install_job ${x[0]} > /dev/null 2>&1 &
done <<< "`adb devices | cut -sf 1`"
echo "WATING FOR INSTALLATION PROCESSES TO COMPLETE"
wait
echo "DONE INSTALLING"
Note 1 : le STDOUT et le STDERR sont supprimés. Vous ne verrez pas le résultat de l'opération "adb install". Cela peut être amélioré, je suppose, si vous devez vraiment
Note 2 : vous pourriez également améliorer script en fournissant des args au lieu de noms de chemin et d'activité codés en dur.
De cette façon, vous :
- Pas besoin d'effectuer manuellement l'installation sur chaque appareil
- Pas besoin d'attendre la fin d'une installation pour en exécuter une autre (les tâches adb sont lancées en parallèle)
Oui vous pouvez installer votre fichier apk dans plusieurs émulateurs pour cela vous devez donner le nom dans l'invite de commande voici le lien pour vous guider
http://developer.Android.com/guide/developing/tools/emulator.html
- Réponses précédentes
- Plus de réponses