我想在android的命令行上通过ADB命令进行调用。
如何使用ADB命令通过PC拨打电话?
请提供源代码。
答案 0 :(得分:42)
你应该这样做(用你的设备或模拟器的序列号替换< serialno>,例如emulator-5554):
$ adb -s <serialno> shell am start -a android.intent.action.CALL -d tel:555-5555
并在logcat中看到这一点:
Starting: Intent { act=android.intent.action.CALL dat=tel:xxx-xxx-xxxx }
答案 1 :(得分:6)
您可以通过以下方式执行此操作:
adb -s "Your devices number" shell am start -a android.intent.action.CALL -d tel:"phone no. to call"
就是这样,你会得到答案:
Starting: Intent { act=android.intent.action.CALL dat=tel:xxxxxxxxxx }
答案 2 :(得分:4)
一个人可以使用此命令通过PC触发的Android拨打电话。
adb shell am start -a android.intent.action.CALL -d tel:+CCXXXXXXXXXX
答案 3 :(得分:3)
在某些Android设备上,存在可执行文件
/system/bin/radiooptions
如果你运行它,帮助就会显示
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
要拨号,您只需运行
即可adb shell su -c "radiooptions 8 XXXXXXX"
其中XXXXXXX将由phonenumber替换。
我在很多HTC设备上看到了这个命令。我目前在HTC One上运行Cyanogenmod 10.2,并且它也是如此。也有可能,它仅适用于带有Qualcomm无线电芯片的设备。
答案 4 :(得分:1)
您可以通过首先使用
查找包来启动拨号器adb shell dumpsys window windows | grep -E 'mCurrentFocus'
然后使用
启动它adb shell monkey -p <package> 1 (probably com.android.contacts)
通过点击拨号器的坐标确保您在拨号器上而不是联系人页面
adb shell input tap <x> <y> (in my case 65, 80)
输入数字
adb shell input text <number>
然后点击拨号坐标
adb shell input tap <x> <y> (in my case 220, 750)
肯定这个答案是矫枉过正的。但是,我之前遇到的所有答案都将启动一个对话框,询问您希望使用哪个应用程序来完成操作 - skype,viber等,这意味着如果您没有选择默认拨号器但是有ott调用已安装的应用程序,或者已指定其他默认拨号程序,将不会通过gsm进行调用。此方法将确保使用gsm。
答案 5 :(得分:0)
adb shell输入keyevent 5 && adb shell输入文本1234567890 && adb shell输入keyevent 5
此处1234567890是电话号码