adb操作手机打电话、发短信
2015-05-16 16:20
465 查看
当我们使用adb命令操作手机的时候经常会报错
![](http://s3.51cto.com/wyfs02/M01/6C/EE/wKiom1VWw0Th1U0zAACr_R4u4eA848.jpg)
这个错误一般是adb的端口(5037)被占用,造成adb server无法启动,解决问题的思路就是查看是哪个程序占用了adb调试端口,然后结束掉它就行。
查找哪个进程占用了5037端口
netstat -aon|findstr "5037"
![](http://s3.51cto.com/wyfs02/M00/6C/E9/wKioL1VWxnbQURqPAAJOEFqS0RU915.jpg)
2.结束对应进程
可以看到PID为12500的程序占用了5037端口,打开任务管理器找到该进程对应程序sjk_daemon.exe,该进程是金山毒霸自带的金山手机助手,强制结束后会自动重启,只有卸掉金山毒霸或者暂时关闭金山毒霸
![](http://s3.51cto.com/wyfs02/M02/6C/EF/wKiom1VWxdWCOPLPAAKu053Sax0576.jpg)
3.验证
结束进程后成功启动adb server登陆手机
![](http://s3.51cto.com/wyfs02/M01/6C/EF/wKiom1VWx3KSKmZ7AACQv9wZMKw915.jpg)
4.通过adb命令打电话、发短信
打电话命令为:adb shell service call phone 2 s16 888888888888888(呼叫的号码)
其中phone表示服务名,2表示拨打动作
也可以使用这个命令:adb shell am start -a android.intent.action.CALL tel:8888888888888
![](http://s3.51cto.com/wyfs02/M01/6C/EF/wKiom1VW3pPwmDF9AAA-apYz92A815.jpg)
![](http://s3.51cto.com/wyfs02/M00/6C/EF/wKiom1VW3kOgSxA9AAKoRPpSetg200.jpg)
发短信就稍微麻烦,发短信的时候保证手机屏幕是开的没有待机,分为下面三个步骤:
1. adb shell am start -a android.intent.action.SENDTO -d sms:10086 --es sms_body hello
打开了短信应用程序,当前焦点在文本框
![](http://s3.51cto.com/wyfs02/M02/6C/EA/wKioL1VW_d-hzrvNAAD8tIDc3gA257.jpg)
2.adb shell input keyevent 22 焦点去到发送按键
![](http://s3.51cto.com/wyfs02/M01/6C/EA/wKioL1VW_kPyX8JsAADpnllz17g416.jpg)
3.adb shell input keyevent 66 回车,就是按下发送键
发送成功,收到回复
![](http://s3.51cto.com/wyfs02/M01/6C/F0/wKiom1VW_SPzI8ZeAALr7cv0oaA434.jpg)
![](http://s3.51cto.com/wyfs02/M01/6C/EE/wKiom1VWw0Th1U0zAACr_R4u4eA848.jpg)
这个错误一般是adb的端口(5037)被占用,造成adb server无法启动,解决问题的思路就是查看是哪个程序占用了adb调试端口,然后结束掉它就行。
查找哪个进程占用了5037端口
netstat -aon|findstr "5037"
![](http://s3.51cto.com/wyfs02/M00/6C/E9/wKioL1VWxnbQURqPAAJOEFqS0RU915.jpg)
2.结束对应进程
可以看到PID为12500的程序占用了5037端口,打开任务管理器找到该进程对应程序sjk_daemon.exe,该进程是金山毒霸自带的金山手机助手,强制结束后会自动重启,只有卸掉金山毒霸或者暂时关闭金山毒霸
![](http://s3.51cto.com/wyfs02/M02/6C/EF/wKiom1VWxdWCOPLPAAKu053Sax0576.jpg)
3.验证
结束进程后成功启动adb server登陆手机
![](http://s3.51cto.com/wyfs02/M01/6C/EF/wKiom1VWx3KSKmZ7AACQv9wZMKw915.jpg)
4.通过adb命令打电话、发短信
打电话命令为:adb shell service call phone 2 s16 888888888888888(呼叫的号码)
其中phone表示服务名,2表示拨打动作
也可以使用这个命令:adb shell am start -a android.intent.action.CALL tel:8888888888888
![](http://s3.51cto.com/wyfs02/M01/6C/EF/wKiom1VW3pPwmDF9AAA-apYz92A815.jpg)
![](http://s3.51cto.com/wyfs02/M00/6C/EF/wKiom1VW3kOgSxA9AAKoRPpSetg200.jpg)
发短信就稍微麻烦,发短信的时候保证手机屏幕是开的没有待机,分为下面三个步骤:
1. adb shell am start -a android.intent.action.SENDTO -d sms:10086 --es sms_body hello
打开了短信应用程序,当前焦点在文本框
![](http://s3.51cto.com/wyfs02/M02/6C/EA/wKioL1VW_d-hzrvNAAD8tIDc3gA257.jpg)
2.adb shell input keyevent 22 焦点去到发送按键
![](http://s3.51cto.com/wyfs02/M01/6C/EA/wKioL1VW_kPyX8JsAADpnllz17g416.jpg)
3.adb shell input keyevent 66 回车,就是按下发送键
发送成功,收到回复
![](http://s3.51cto.com/wyfs02/M01/6C/F0/wKiom1VW_SPzI8ZeAALr7cv0oaA434.jpg)
相关文章推荐
- adb操作手机打电话、发短信
- pc(电脑)用java通过adb操作android手机发短信及中文乱码解决
- 代码控制打电话、发短信、发邮件、打开手机app等操作
- 在Android模拟器中模拟GPS、打电话、发短信等操作
- Android手机系统adb操作命令详解
- adb命令具体解释(二)——手机缺失sqlite3时操作数据库的多种解决方式
- 关于手机应用里的打电话,发短信,拍照等
- 无需root简单易用安卓wifi调试 这个只是一个小操作,三步: 1. 用数据线连接你的手机和电脑 2. 电脑终端执行命令: adb tcpip 5555 3. 电脑终端执行命令: adb c
- Android ADB 请问怎么操作手机剪贴板,如何读取和写入剪贴板内容?
- 利用手机中存储的电话号码给联系人打电话与发短信
- 用Intent 调用 打电话 发短信 播放音乐 删除软件 安装软件等操作
- PC端通过adb命令远程连接手机的相关操作
- 利用手机中存储的电话号码给联系人打电话与发短信
- 操作联系人(添加联系人,打电话,发短信)
- delphi xe5 android 开发实现手机打电话和发短信
- 移动设备wap手机网页html5通过特殊链接:打电话,发短信,发邮件详细教程
- 【转】HTML5手机浏览直接给一个号码打电话,发短信
- 移动设备wap手机网页html5通过特殊链接:打电话,发短信,发邮件详细教程
- Android手机可以通过adb执行按键操作
- 手机缺失sqlite3时操作数据库的多种解决方案 ----adb命令科普