当我们使用adb命令操作手机的时候经常会报错

这个错误一般是adb的端口(5037)被占用,造成adb server无法启动,解决问题的思路就是查看是哪个程序占用了adb调试端口,然后结束掉它就行。

  1. 查找哪个进程占用了5037端口

     netstat -aon|findstr "5037"

 2.结束对应进程

     可以看到PID为12500的程序占用了5037端口,打开任务管理器找到该进程对应程序sjk_daemon.exe,该进程是金山毒霸自带的金山手机助手,强制结束后会自动重启,只有卸掉金山毒霸或者暂时关闭金山毒霸

3.验证

结束进程后成功启动adb server登陆手机

4.通过adb命令打电话、发短信

打电话命令为:adb shell service call phone 2 s16 888888888888888(呼叫的号码)

其中phone表示服务名,2表示拨打动作

也可以使用这个命令:adb shell am start -a android.intent.action.CALL tel:8888888888888

发短信就稍微麻烦,发短信的时候保证手机屏幕是开的没有待机,分为下面三个步骤:

1. adb shell am start -a android.intent.action.SENDTO -d sms:10086 --es sms_body  hello

打开了短信应用程序,当前焦点在文本框

2.adb shell input keyevent 22  焦点去到发送按键

3.adb shell input keyevent 66  回车,就是按下发送键

发送成功,收到回复