无线调试是最近在Xcode 9、iOS 11和tvOS 11中添加的功能。苹果4K电视没有USB接口,因此需要无线调试。如何在Xcode中进行无线调试?
当前回答
我遵循了所有建议的步骤,特别是ios_dev提供的步骤,但我的iPhone无法从Xcode中识别出来,而且我无法通过WiFi进行调试。在“设备和模拟器”窗口中右键单击我的设备的左侧面板,然后“通过IP地址连接…”,插入iPhone IP,现在它正确工作了
其他回答
对我来说,唯一有效的方法就是用蓝牙把我的手机和MacBook连接起来。(根据ios_dev上面的回答,我是在第一次将我的手机与Xcode配对并通过电缆连接后这样做的。)
在我的手机上,我选择了设置>蓝牙,然后在“我的设备”下点击我的MacBook的名字来连接。
然后我去了Xcode > Devices and Simulators,选择我的手机并选择“通过网络连接”。几秒钟后,我的手机旁边出现了地球仪图标,我可以在手机上运行和调试我的应用程序了。
即使我的MacBook连接了WiFi网络,手机使用的是LTE,这个功能也能正常工作。唯一的缺点是在手机上安装应用程序非常缓慢。
你可以打开Xcode Help -> Run and debug -> Network debugging获取更多信息。希望能有所帮助。
设置网络调试设备
从help.apple.com
通过Wi-Fi或其他网络连接调试在iOS或tvOS设备上运行的应用程序。
设置iPhone、iPad或iPod touch的步骤
检查你的设备是否有密码,如果没有就添加一个。您的设备必须有密码才能启用远程调试 Mac和iPhone/iPad需要在同一个网络上才能使用无线调试。
接下来,在Xcode中
选择窗口>设备和模拟器,然后在出现的窗口中单击设备。 使用Lightning电缆将您的设备连接到Mac。 在左侧列中选择设备,在详细信息区域中选择“通过网络连接”。
Xcode与你的设备配对。如果Xcode可以通过网络连接到设备,则在设备的左列中会出现一个网络图标。
断开设备连接。
现在可以通过网络进行调试了。
有时候行不通。您可能需要重新启动设备或网络连接。
注意:网络调试需要在macOS 10.12.4及以上版本上运行Xcode 9.0及以上版本,在设备上运行iOS 11.0及以上版本,或tvOS 11.0及以上版本。
安装Apple TV的步骤:
Make sure your Mac and your Apple TV are on the same network. Choose Window > Devices and Simulators, then in the window that appears, click Devices. On your Apple TV, open the Settings app and choose Remotes and Devices > Remote App and Devices. The Apple TV searches for possible devices including the Mac. (If you have any firewall or Internet security, disable/turn it off to allow searching.) On your Mac, select the Apple TV in the Devices pane. The pane for the Apple TV is displayed and shows the current status of the connection request. Enter the verification code displayed on your AppleTV into the Device window pane for the device and click Connect.
Xcode设置Apple TV进行无线调试,并与设备配对。
我刚刚在WWDC上和一些Xcode工程师谈过,iDevices的自动发现仍然有一些bug。有时你的手机也不能正确地广播。打开和关闭你的设备会有所帮助。
有一些变通方法/后备方案:
您可以通过Bonjour浏览器(www.tildesoft.com)检查您的手机是否在广播。看看你的wifi地址是否列在名为“_apple-mobdev2._tcp”的服务下。- 215'(你可以在这里找到你的wifi地址:Settings > general > about > wifi地址。
作为备用方案,您可以通过手动输入IP地址连接到您的设备(在设备窗口中右键单击设备)。 然而,这个IP地址将被持久化,所以如果你改变网络,你将需要重置它。这个选项在Xcode中还不可用,但你可以通过下面的命令通过终端来实现:
defaults read com.apple.dt.Xcode | grep IDEIDS
这将打印一个标识符,你需要在下一个命令中使用:
defaults delete com.apple.dt.Xcode <identifier>
现在ip地址已清除,可以重新输入新的ip地址。
最后一个选择是建立一个计算机对计算机的网络。这很好,但从逻辑上讲,这样你就不能上网了。
网络调试要求在macOS 10.12.4上运行Xcode 9.0或更高版本 或更高版本,并且在设备上要求iOS 11.0或更高版本,或tvOS 11.0 或更高版本。
iPhone
iOS 11将不适用于32位设备,即iPhone 5、iPhone 5c及以下设备。第一代64位的iPhone是5s。
iPad
iPad mini 2将是支持iOS 11的最老的iPad。
iPod
iPod必须是iPod 6才能运行iOS。
如果你的设备不仅用于开发,还用于生产,请注意,beta操作系统不适合胆小的人;-)
推荐文章
- iPhone上UIView和UILabels的渐变
- keychain上的分发证书中缺少私钥
- 在实现API时,我如何避免在块中捕获自我?
- Xcode的构建文件夹在哪里?
- 如何创建一个Swift Date对象?
- Xcode 4在目标设备上说“finished running <my app>”——什么都没有发生
- 从另一个应用程序打开设置应用程序
- 快速提取正则表达式匹配
- 如何应用梯度的背景视图的iOS Swift应用程序
- 图书馆吗?静态的?动态吗?或框架?另一个项目中的项目
- 如何用SwiftUI调整图像大小?
- Xcode 6 gitignore文件应该包括什么?
- 如何在iPhone/iOS上删除电话号码的蓝色样式?
- 检测视网膜显示
- 如何在UIImageView中动画图像的变化?