江中游电脑版按键论坛教学总录:http://bbs.anjian.com/showtopic-697741-1.aspx
江中游安卓手机系统教学总录: http://bbs.anjian.com/showtopic-699643-1.aspx
江中游异次元-未来的夏娃
第3课 物理手机及多设备连接
adb及我的插件下载在本文尾。
才发现忘了介绍adb打开和关闭adb服务的方式了
adb打开启动服务命令是:
adb关闭服务命令是:
知道这个就好办了,大家可以打开我上一篇文章中的ini配置文件全命令加进去:下面是记事本ini中的代码
- [adb]
- 获取设备=devices
- 启动服务=start-server
- 关闭服务=kill-server
复制代码按键代码:
- Dim adb,设备数组
- adb = "C:\adb\adb.exe "
- adbcmd = "C:\adb\adb.ini"
- Call 启动服务()
- Function 启动服务
- 启动adb服务 =Plugin.File.ReadINI("adb", "启动服务", adbcmd)'读取保存在ini文件中的命令
- TracePrint 启动adb服务
- adbret = Plugin.JzyCommand.Command(adb & 启动adb服务, 1000)'使用我的插件来获取连接的设备
- End Function
- Function 关闭服务()
- 关闭adb服务 =Plugin.File.ReadINI("adb", "关闭服务", adbcmd)'读取保存在ini文件中的命令
- adbret = Plugin.JzyCommand.Command(adb & 关闭adb服务, 1000)'使用我的插件来获取连接的设备
- End Function
复制代码一、物理手机的连接:
首先必须打开开发者选项中的usb连接,我想大家也都能会了吧,如果不会请点下面链接:
https://jingyan.baidu.com/article/0a52e3f4325f70fe63ed727a.html
然后手机数据线要插到电脑的USB接口上,如果你的电脑没有识别你的手机那么有可能是没有安装相关驱动 ,驱动我这里就不给大家了因为每个型号的手机驱动不尽一样,这个建议大家自己找一下针对自己手机的驱动 。不过通常情况下10系统是默认的了。
手机数据线插到电脑时,会有咣当一声响,通常代表识别了
再有,当手机提示是否允许时,一定要允许,这是必须的!
然后做什么呢?
运行代码试一下,代码是我上一课的代码:
- Dim adb
- adb = "C:\adb\adb.exe "
- adbcmd="C:\adb\adb.ini"
- 获取设备 = Plugin.File.ReadINI("adb", "获取设备", adbcmd)'读取保存在ini文件中的命令
- TracePrint 获取设备
- adbret = Plugin.JzyCommand.Command(adb & 获取设备, 1000)'使用我的插件来获取连接的设备
- TracePrint adbret
- 转化数组 = split(adbret, "|")'在dos中的每一行我这里使用中隔线"|"代表
- For i = 0 To UBound(转化数组)
- 文本 = 转化数组(i)
- If Right (文本,6) = "device"Then '这一行中如有device字符代表是已经连接的设备
- 设备id = Replace(文本, "device", "")'过滤一下
- Exit For
- End If
- Next
- TracePrint 设备id
复制代码注意:
1、通常运行第一次是不成功的,这也是adb的一个小问题,大家不要害怕
2、adb也移动按键助手是有冲突的,移动按键助手通常喜欢霸占良家妇女
3、如有其它的关于连接手机的工具也要退出
4、运行按键精灵时,眼睛一定要瞪圆圆的,看手机,如果出现下面弹窗必须允许
二、获取多个设备如果是多个设备那么也都要插上USB接口,设置开发者选项,而多设备上面的代码就要好好改一下,这里我给大家封装函数的形式,代码我加了注释了- Dim adb,设备数组
- adb = "C:\adb\adb.exe "
- adbcmd = "C:\adb\adb.ini"
- Call 启动服务()
- Function 启动服务
- 启动adb服务 =Plugin.File.ReadINI("adb", "启动服务", adbcmd)'读取保存在ini文件中的命令
- TracePrint 启动adb服务
- adbret = Plugin.JzyCommand.Command(adb & 启动adb服务, 1000)'使用我的插件来获取连接的设备
- End Function
- Function 关闭服务()
- 关闭adb服务 =Plugin.File.ReadINI("adb", "关闭服务", adbcmd)'读取保存在ini文件中的命令
- adbret = Plugin.JzyCommand.Command(adb & 关闭adb服务, 1000)'使用我的插件来获取连接的设备
- End Function
- Function 获取设备ID群()
- Dim 获取设备
- 获取设备 = Plugin.File.ReadINI("adb", "获取设备", adbcmd)'读取保存在ini文件中的命令
- adbret = Plugin.JzyCommand.Command(adb & 获取设备, 1000)'使用我的插件来获取连接的设备
- 转化数组 = split(adbret, "|")'在dos中的每一行我这里使用中隔线"|"代表
- 设备ID = array()'按键的bug,重新定义数组不要加dim
- ReDim 设备ID(3)'按键的bug,重新定义数组不要加dim
- For i = 0 To UBound(转化数组)
- If Right (转化数组(i),6) = "device"Then '这一行中如有device字符代表是已经连接的设备
- 设备ID(i) = Replace(转化数组(i), "device", "")'过滤一下
- End If
- Next
- 获取设备ID群 = (设备ID)
- End Function
复制代码 本文涉及到的工具下载: - JzyCommand.rar (, 下载次数:264)