2017-08-15 1 views
8

en cours avec la CLI et l'émulateur en cours d'exécution avec la commande suivante:Impossible de démarrer l'émulateur Android avec erreur: Il y a une autre instance de l'émulateur en cours d'exécution avec l'AVD

./emulator -use-system-libs @Nexus5API25 

Affiche seule erreur et un émulateur ne démarre pas.

emulator: ERROR: There's another emulator instance running with the current AVD 'Nexus5API25'. Exiting... 

Et:

  • Il n'y a pas d'exemple émulateur en cours d'exécution.
  • Nexus5API25 existe et fonctionnait dans le passé.
  • Je dois utiliser l'indicateur -use-system-libs sur ma machine pour démarrer une instance d'émulateur.
  • Autre AVD fonctionne.

Lorsqu'il est exécuté avec -verbose il y a plus de détails imprimés mais je ne vois rien ce qui me aiderait à résoudre le problème:

emulator:Android emulator version 26.1.3.0 (build_id 4205252) (CL:e55642d861e04276b2fa453bfaff4a836f3a3269) 
emulator:Found AVD name 'Nexus5API25' 
emulator:Found AVD target architecture: x86_64 
emulator:argv[0]: './emulator'; program directory: '/home/developer/opt/Android/Sdk/emulator' 
emulator: Found directory: /home/developer/opt/Android/Sdk/system-images/android-25/google_apis/x86_64/ 

emulator:Probing for /home/developer/opt/Android/Sdk/system-images/android-25/google_apis/x86_64//kernel-ranchu: file exists 
emulator:Auto-config: -engine qemu2 (based on configuration) 
emulator: Found directory: /home/developer/opt/Android/Sdk/system-images/android-25/google_apis/x86_64/ 

emulator:try dir /home/developer/opt/Android/Sdk/emulator 
emulator:Found target-specific 64-bit emulator binary: /home/developer/opt/Android/Sdk/emulator/qemu/linux-x86_64/qemu-system-x86_64 
emulator:Adding library search path: '/home/developer/opt/Android/Sdk/emulator/lib64' 
emulator:Adding library search path: '/home/developer/opt/Android/Sdk/emulator/lib64/gles_swiftshader' 
emulator:Adding library search path: '/home/developer/opt/Android/Sdk/emulator/lib64/gles_angle' 
emulator:Adding library search path: '/home/developer/opt/Android/Sdk/emulator/lib64/gles_angle9' 
emulator:Adding library search path: '/home/developer/opt/Android/Sdk/emulator/lib64/gles_angle11' 
emulator: Adding library search path for Qt: '/home/developer/opt/Android/Sdk/emulator/lib64/qt/lib' 
emulator: Setting Qt plugin search path: QT_QPA_PLATFORM_PLUGIN_PATH=/home/developer/opt/Android/Sdk/emulator/lib64/qt/plugins 
emulator: Running :/home/developer/opt/Android/Sdk/emulator/qemu/linux-x86_64/qemu-system-x86_64 
emulator: qemu backend: argv[00] = "/home/developer/opt/Android/Sdk/emulator/qemu/linux-x86_64/qemu-system-x86_64" 
emulator: qemu backend: argv[01] = "-verbose" 
emulator: qemu backend: argv[02] = "-use-system-libs" 
emulator: qemu backend: argv[03] = "@Nexus5API25" 
emulator: Concatenated backend parameters: 
/home/developer/opt/Android/Sdk/emulator/qemu/linux-x86_64/qemu-system-x86_64 -verbose -use-system-libs @Nexus5API25 
emulator: Android virtual device file at: /home/developer/.android/avd/Nexus5API25.ini 
emulator: virtual device content at /home/developer/.android/avd/Nexus_5_API_25.avd 
emulator: virtual device config file: /home/developer/.android/avd/Nexus_5_API_25.avd/config.ini 
emulator: using core hw config path: /home/developer/.android/avd/Nexus_5_API_25.avd/hardware-qemu.ini 
emulator: Found AVD target API level: 25 
emulator: Read property file at /home/developer/opt/Android/Sdk/system-images/android-25/google_apis/x86_64//build.prop 
emulator: No boot.prop property file found. 
emulator: found skin 'nexus_5' in directory: /home/developer/opt/Android/Sdk/skins/ 
emulator: autoconfig: -skin nexus_5 
emulator: autoconfig: -skindir /home/developer/opt/Android/Sdk/skins/ 
emulator: autoconfig: -kernel /home/developer/opt/Android/Sdk/system-images/android-25/google_apis/x86_64//kernel-ranchu 
emulator: Target arch = 'x86_64' 
emulator: Auto-detect: Kernel image requires new device naming scheme. 
emulator: Auto-detect: Kernel does not support YAFFS2 partitions. 
emulator: autoconfig: -ramdisk /home/developer/opt/Android/Sdk/system-images/android-25/google_apis/x86_64//ramdisk.img 
emulator: Using initial system image: /home/developer/opt/Android/Sdk/system-images/android-25/google_apis/x86_64//system.img 
emulator: No vendor image 
emulator: autoconfig: -data /home/developer/.android/avd/Nexus_5_API_25.avd/userdata-qemu.img 
emulator: autoconfig: -initdata /home/developer/.android/avd/Nexus_5_API_25.avd/userdata.img 
emulator: autoconfig: -cache /home/developer/.android/avd/Nexus_5_API_25.avd/cache.img 
emulator: autoconfig: -sdcard /home/developer/.android/avd/Nexus_5_API_25.avd/sdcard.img 
emulator: Physical RAM size: 1536MB 

emulator: VM heap size 128MB is below hardware specified minimum of 384MB,setting it to that value 
emulator: System image is read only 
emulator: Found 1 DNS servers: 127.0.0.53 
emulator: ERROR: There's another emulator instance running with the current AVD 'Nexus5API25'. Exiting... 

Je sais que je peux supprimer l'AVD et de créer une nouvelle . Mais existe-t-il un moyen de résoudre le problème avec AVD existant sans le recréer?

Répondre

20

j'ai réussi à résoudre le problème en supprimant un fichier de verrouillage créé par le gestionnaire de AVD.

rm ~/.android/avd/Nexus_5_API_25.avd/hardware-qemu.ini.lock 

L'émulateur a fonctionné sans problème une fois le fichier supprimé.

0

Avez-vous essayé d'arrêter le processus avant d'exécuter votre script?

D'abord, vous trouverez le PID

adb shell ps 

Ensuite, vous tuez le processus

adb shell kill <PID> 
+0

Déjà essayé mais il n'y a pas de processus d'émulation en cours d'exécution donc rien à tuer. –

+0

Qu'en est-il de la commande: adb shell ps Pouvez-vous voir quelque chose? –

+0

Si vous trouvez un PID essayez ceci pour tuer kill shell adb

1

Sous Linux, cela peut également être dû au fait que l'AVD a été créé par root alors qu'un autre utilisateur tente d'exécuter l'émulateur. Dans ce cas, changer le propriétaire du contenu du dossier avd devrait aider à le résoudre.

sudo chown -R YOUR_USER. avd 
1

J'ai eu le même problème, même si aucun autre émulateur n'était en cours d'exécution.

Dans mon cas, le système de fichiers contenant les répertoires avd était monté en lecture seule. Remonter rw a résolu le problème