web-dev-qa-db-fra.com

Comment redémarrer l'émulateur pour tester ACTION_BOOT_COMPLETED?

Eh bien, j'ai beaucoup cherché. Les gens disent que je dois fermer la fenêtre de l'émulateur pour le fermer. Cependant, je dois redémarrer l'émulateur pour attraper ACTION_BOOT_COMPLETED par mon BroadcastReceiver .

Comment puis je faire ça?

28
user942821

Vous pouvez utiliser la commande suivante depuis adb: 

adb Shell am activity/service/broadcast -a ACTION -c CATEGORY -n NAME

par exemple:

adb Shell am broadcast -a Android.intent.action.BOOT_COMPLETED -c Android.intent.category.HOME -n package_name/class_name

Notez que le nom de classe et les noms de package doivent être tels que définis dans le manifeste.

Cela générera l’intention souhaitée, dirigée uniquement vers le composant souhaité (sinon, votre système deviendra fou avec BOOT_COMPLETED envoyé ...)

33
Anat

Ou d'une autre manière (également à partir de la ligne de commande):

adb Shell stop
adb Shell start
30
Booger

Pour émuler une action de diffusion, vous pouvez vous connecter via adb à l’émulateur/périphérique et ouvrir un shell:

adb Shell

Ensuite, vous pouvez diffuser l'action que vous souhaitez tester:

am broadcast -a Android.intent.action.BOOT_COMPLETED

Veuillez noter que, dans les dernières versions d'Android, la diffusion de l'action * Android.intent.action.BOOT_COMPLETED * réinitialisera votre émulateur/périphérique.

8
Paolo Rovelli

Tout d’abord, assurez-vous que le débogage USB est activé depuis l’émulateur:

cliquez sur:

  • l'icône de la maison 
  • Icône de menu
  • 'Réglages'
  • 'Applications'
  • 'Développement'
  • assurez-vous que la case "Débogage USB" est cochée

à partir d'une ligne de commande:

adb -e reboot

MODIFIER:

Cela ne fonctionne vraiment pas… très étrange. Je l'ai testé et je n'ai pas pu faire redémarrer l'émulateur. Ça ne fait que pendre.

6
DavidDraughn

Lors de l'utilisation de tubemate sur l'onglet Android, le téléchargement de la vidéo avec le error:Host interupped etc. n'a pas réussi. J'ai utilisé les commandes suivantes:

adb Shell stop
adb Shell start

et l'application a commencé à télécharger des vidéos.

0
susjoy