web-dev-qa-db-fra.com

Comment passer un appel via PC par la commande ADB sur Android?

Je voudrais passer un appel via la commande ADB sur la ligne de commande d'Android.

Comment dois-je utiliser la commande ADB pour passer un appel via un PC?

veuillez fournir le code source.

25
user604190

Vous devriez faire (remplacez <serialno> par le numéro de série de votre appareil ou émulateur, par exemple émulateur-5554):

$ adb -s <serialno> Shell am start -a Android.intent.action.CALL -d tel:555-5555

et voyez ceci dans le logcat:

Starting: Intent { act=Android.intent.action.CALL dat=tel:xxx-xxx-xxxx }
44
Diego Torres Milano

Vous pouvez le faire en:

  1. Entrez dans votre adb en cmd
  2. Entrez les appareils adb. Quel que soit l'identifiant que vous obtiendrez, ce sera votre numéro d'appareil
  3. Entrez (sans guillemets):

adb -s "Your devices number" Shell am start -a Android.intent.action.CALL -d tel:"phone no. to call"

Voilà et vous obtiendrez la réponse comme:

Starting: Intent { act=Android.intent.action.CALL dat=tel:xxxxxxxxxx }
6
Sukirti Dash

Sur certains appareils Android, il existe un exécutable

/system/bin/radiooptions

Si vous l'exécutez, l'aide s'affiche

Usage: radiooptions [option] [extra_socket_args]
           0 - RADIO_RESET, 
           1 - RADIO_OFF, 
           2 - UNSOL_NETWORK_STATE_CHANGE, 
           3 - QXDM_ENABLE, 
           4 - QXDM_DISABLE, 
           5 - RADIO_ON, 
           6 apn- SETUP_PDP apn, 
           7 - DEACTIVE_PDP, 
           8 number - DIAL_CALL number, 
           9 - ANSWER_CALL, 
           10 - END_CALL 

Pour composer un numéro, vous pouvez simplement exécuter

adb Shell su -c "radiooptions 8 XXXXXXX"

où XXXXXXX doit être remplacé par le numéro de téléphone.

J'ai vu cette commande sur de nombreux appareils HTC. Je lance actuellement un Cyanogenmod 10.2 sur un HTC One, et il est là aussi. Il pourrait également être possible qu'il ne soit disponible que sur les appareils dotés d'une puce radio Qualcomm.

3
Adrian Schneider

vous pouvez lancer le numéroteur, en trouvant d'abord le package à l'aide

adb Shell dumpsys window windows | grep -E 'mCurrentFocus'

puis le lancer en utilisant

adb Shell monkey -p <package> 1 (probably com.Android.contacts)

assurez-vous que vous êtes sur le numéroteur et non sur la page des contacts en cliquant sur les coordonnées du numéroteur

adb Shell input tap <x> <y> (in my case 65, 80)

taper le numéro

adb Shell input text <number>

puis appuyez sur les coordonnées du cadran

adb Shell input tap <x> <y> (in my case 220, 750)

Pour sûr, cette réponse est exagérée. Cependant, toutes les réponses précédentes que j'ai rencontrées lanceront alors une boîte de dialogue demandant quelle application vous souhaitez utiliser pour terminer l'action - skype, viber, etc., ce qui signifie que si vous n'avez pas choisi de numéroteur par défaut mais avez des applications d'appel ott installé, ou si vous avez spécifié un autre numéroteur par défaut, l'appel ne sera pas effectué via gsm. Cette méthode garantit l'utilisation de gsm.

1
rbennell

adb Shell entrée keyevent 5 && adb Shell entrée texte 1234567890 && adb Shell input keyevent 5

Ici 1234567890 est le numéro de téléphone

0