Android Wear 应用调试
tags: AndroidWear
本文译自Google文档,仅供个人学习、记录、参考。如有纰漏,还请评论指出。
另注:不得不说Android Wear生态相当薄弱。就连开发者社区都毫无波澜。笔者入手了一块Pacewear智能手表,系统版本为Android Wear 1.x,故着眼于1.x版本更多点。
不过似乎国内也没有看到有Android Wear 2.x的手表吧?勘误:华为手表支持Android Wear 2.0
原文地址:Debugging an Android Wear App
开发者可以通过本文介绍的方法,通过WIFI或蓝牙来连接开发机和设备。如果设备有USB口,也可通过USB进行连接。
在手表上开启开发者模式
在进行手表上调试之前,你需要开启手表上的开发者模式。这一步操作只需要执行一次。开发者模式将会一直生效,直到你关闭了它。
- 进入手表的
设置(Settings)
选项 - 点击
系统(System) > 关于(About)
- 滑动到
构建号(Build number)
一栏,点击7次(注:但在Pacewear上笔者点击了不止7次) - 此时会有一个提示提醒你,开发者模式已开启
通过WIFI进行调试
进行下一步操作之前,请确保已经在手表上开启了开发者模式。
连接手表到WIFI网络
- 进入手表的
设置(Setting)
选项 - 点击
连接(Connectivity) > Wi-Fi
- 选择一个无线网络进行连接(可能需要输入密码)
注意:你的手表和你的开发机必须连接到同一个网络。并非所有的接入点都是合适的,你可能需要使用一个防火墙配置成能够支持adb的接入点。
启用Wi-Fi调试
- 打开手表的
设置(Settings)
选项 - 点击
开发者选项 > 通过Wi-Fi调试
- 稍等一会,屏幕上会显示手表的IP地址(如:192.168.1.100)。记下这个IP地址,下一步操作将会用到它。
连接调试器到手表
- 确认你的手表和你的开发机连接到了同一个网络
- 通过手表的IP地址,让调试器连接到手表。假设IP地址为
192.168.1.100
,adb的连接命令和返回结果将像这样(端口号5555
添加在地址后面):adb connect 192.168.1.100 connected to 192.168.1.100:5555复制代码
此时,手表已经和调试器连接,可以开始进行调试了。使用-s标记,指定手表的IP地址和端口来发送adb命令到手表上:
adb -s 192.168.1.100:5555 <command>复制代码
如果你没有使用模拟器,且只有一个设备连接调试,那么可以省却-s标记。
adb <command>复制代码
通过蓝牙进行调试
蓝牙调试功能只在Android配对手表上可用。进行下一步之前,确保手表和手机已经配对,且在手表上开启了开发者模式。同时,手机也需要开启开发者模式。开启手机上的开发者模式,打开手机上的设置
菜单,选择关于手机
,点击构建号
7次即可。
启用手机的USB调试
- 打开手机的
设置
菜单 - 选择
开发者选项
,然后启用USB调试
启用手表上的ADB/蓝牙调试
- 打开手表的
设置(Settings)
- 滑动至
开发者选项(Developer Options)
- 确认启用了
ADB调试
- 启用
通过蓝牙进行调试
启用手机上的蓝牙调试
- 在手机上打开Android Wear 配套应用
- 点击设置按钮
- 启用
通过蓝牙进行调试
选项。选项下方会显示状态信息,类似这样:Host: disconnected Target: connected复制代码
此时,开发机(Host)还没和手表(Target)进行通讯。你需要完成整个连接过程。
笔者注:Android Wear 配套应用并没有随着Android系统附带在手机上,需要自行下载。在Google Play上,这个程序叫
Android Wear
,发布者为Google。国内用户推荐使用豌豆荚,搜索Android Wear
进行下载。
连接调试器到手表
在这最后一步,你将会用上上述步骤中准备好的一切:调试器、手机以及手表。
- 使用USB线连接手机和开发机
在调试器上运行下面两条指令:
adb forward tcp:4444 localabstract:/adb-hub adb connect 127.0.0.1:4444复制代码
注意:你必须使用
127.0.0.1
这个IP地址。而端口号可以任意指定一个开发机上可用的端口号。另外,你需要确保两条指令里使用的端口号是一致的。(在这个例子里,端口号设为4444)执行了这两条指令,此时手表上将会提示你是否允许
ADB调试
查看手机,查看手机上的Android Wear配套应用中显示的状态信息。此时状态信息应该类似这样:
Host: connected Target: connected复制代码
此时手表已经连接上调试器,可以开始我们的调试了。
当你通过蓝牙来调试手表应用,adb将一直使用127.0.0.1:你指定的端口号
来发送指令到手表上。即所有的adb命令格式将类似这样(依照上面的例子,端口号为4444):
adb -s 127.0.0.1:4444 <command>复制代码
如果你没有使用模拟器,且只有一台设备连接到了调试器,此时可以省去指定地址的部分:
adb <command>复制代码