今天终于更新了Xcode 9,看到朋友圈说的新功能可以无线调试,我也激动地把手机系统更新到iOS 11.0,然后测试了一下,感觉挺好的。现在就把它分享给大家!
前言
实现无线调试,总的来说需要三个条件:
1. Xcode版本要升级到 Xcode 9。
2.苹果手机系统版本要升级到iOS 11.0。
3.电脑和手机都需要连接同一个无线网络。
具体的操作
连接手机
Xcode 打开要调试的项目,把手机先通过数据数连接上,选择 Window -> Devices and Simulators 会打开一个窗口,你可以看到你手机的信息,再勾选上右侧的 Connect via network 。然后就等着Xcode转菊花吧。
完成后就可以把手机断开了,这时我们可以看到工程的Device中可以选择手机了,激动的我们可以直接运行一下。
结果你会发现这样并不能无线调试起来,这就需要我们设置连接手机地址(IP Adress) 了。
连接IP Adress
再打开第一步的窗口(Window -> Devices and Simulators),选择左侧的手机设备右键,选择小弹框的 Connect via IP Address... 这样会提示你输入手机局域网IP地址
若手机局域网IP地址不知道如何获取,可以看下面的手机局域网IP地址
填写好之后,选择Connect,完成后会手机后面会出现连接上的圆形网络标志
下面你就可以进行无线调试了。
手机局域网IP地址
其实也很简单,进手机的 设置 -> 无线局域网 查看连接好的无线网的信息,里面有个 IP 地址, 这就是它的手机局域网IP 地址。
注意事项
需要注意的无线调试需要在同一个无线网络上运行,如果手机变了无线网,Xcode 会提示‘当手机连接上(原来的IP 地址)后工程会运行’。如果电脑的网有变,会直接看到Devices and Simulators的窗口中网络标志没有的,而是菊花一直在转。
因些无线调试需要的是同一个局域网内进行。
Tips
无线调试我觉得很神奇的地方在三点:
1. Xcode运行的包文件是如何安装到了手机里面的。
2.当Xcode上打了断点,手机上运行,为何依然可以停留在断点处,如何控制的呢?
3.当手机运行时,停留在断点处,我们依然可以在Xcode工作台中进行数据打印和查看,手机上的数据如何又馈到Xcode中的呢?
也许这就是苹果(iOS 11.0)的神奇之处吧,实现了无线的电量传输,也实现了无线调试。
补充:无须连接手机局域网IP地址也可以无线调试
今天听到朋友说的无线调试可以不需要连接IP Adress.为此我专门回家测试了一下。
其实挺惊呀的,主要是当初写这篇文章的时候 ,我的的确确亲自测试了的,不去手动设置连接手机局域网IP确实跑不起来。不知道为何现在也可以了。
我们用数据线连接上电脑,把Connect via network 勾选上后,Xcode会帮我们自动去连接手机局域网IP地址,当连接好了之后,一样可以看手机后面圆形网络连接标志,这时再运行工程就可以无线联调了。
总结
关键就是是否看到Devices窗口(Window -> Devices and Simulators)中手机后面是否有网络连接标志,没有的话我们手动去设置。
谢谢
再次谢谢这位朋友的指教!