如何在带有iOS 11,Apple TV 4K等的Xcode 9中执行无线调试?


347

Xcode 9,iOS 11和tvOS 11中最近添加了无线调试功能。AppleTV 4K没有USB端口,因此需要无线调试。您如何在Xcode中执行此无线调试?


3
有没有人真的成功进行了无线调试?我遵循了相同的步骤,但是当我尝试进行无线调试时,它一直显示iphone已断开连接。连接调试工作正常。
严重萨姆'17

2
@SeriousSam有效。您需要在同一网络上。
badhanganesh

我已经检查了无线调试,一切正常
iPC

1
即使使用另一台系留的iPhone作为WiFi支持,它也可以在这里工作。
Jonny

1
10到20秒后,连接断开!任何想法为什么会这样?谢谢!
UserID0908

Answers:


599

设置设备进行网络调试

来自help.apple.com

注意:Mac系统和iPhone / iPad应该共享同一网络才能使用无线调试。

调试通过WiFi或其他网络连接在iOS或tvOS设备上运行的应用。

注意:网络调试需要MacOS 10.12.4或更高版本上运行的Xcode 9.0或更高版本,并且在设备上需要iOS 11.0或更高版本tvOS 11.0或更高版本

设置iPhone,iPad或iPod touch的步骤

  1. 选择“窗口”>“设备和模拟器”,然后在出现的窗口中,单击“设备”。

  2. 使用Lightning电缆将设备连接到Mac。

  3. 检查您的设备设置中是否启用了密码。如果尚未启用,则启用。
  4. 在左列中,选择设备,然后在详细信息区域中,选择“通过网络连接”。

    在此处输入图片说明

    Xcode与您的设备配对。如果Xcode可以使用网络与设备连接,则在左列中设备旁边会出现一个网络图标。

    在此处输入图片说明

  5. 断开设备连接。

注意:设备需要密码才能启用远程调试。

现在您可以通过网络进行调试了。


设置Apple TV的步骤:

  1. 确保Mac和Apple TV在同一网络上。

  2. 选择“窗口”>“设备和模拟器”,然后在出现的窗口中,单击“设备”。

  3. 在Apple TV上,打开“设置”应用程序,然后选择“遥控器和设备”>“远程应用程序和设备”。

  4. Apple TV搜索可能的设备,包括Mac。(如果您具有防火墙或Internet安全性,请禁用/关闭以允许搜索。)

  5. 在Mac上,在“设备”窗格中选择Apple TV。将显示Apple TV的窗格,并显示连接请求的当前状态。

  6. 在设备的“设备”窗口窗格中,输入AppleTV上显示的验证码,然后单击“连接”。

Xcode设置Apple TV进行无线调试并与设备配对。

编辑:-------

有时配对不适用于无线调试,因此只需重新启动设备和互联网连接即可。另外,如果启用了防火墙,则需要关闭用于配对设备的防火墙。

在此处输入图片说明

在此处输入图片说明


9
对我来说,最初没有用。但是当我重新启动设备时,它开始工作。感谢苹果进行wifi调试:)
Vinay Kumar

1
在“ iPhone繁忙”且正在运行时,重新启动并短暂等待。
Magnas

4
@Lacek根据我的理解,不可能通过VPN进行无线调试。将检查所有解决方法,以获取更新内容。
iPC

4
通过网络连接到Apple TV时的重要提示:当Mac也通过USB连接到Apple TV时,此功能不起作用。
伊利

2
@Luz我可以确认此功能可以与OpenVPN结合使用,以使用Mojave上的相当标准的OpenVPN配置从远程服务器进行调试。我在这里有更多详细信息,但是如果有人需要详细说明,请随时与我联系。
fakedad

53

我尝试使用Xcode设备窗口的通过网络连接选项。但我看不到设备名称旁边的“通过网络连接”图标。同样,一旦移除USB,“通过网络连接”选项就会消失。同样,设备名称显示在断开连接的设备列表下。

但是使用“通过IP地址连接...”选项,我可以进行连接。

  1. 右键单击设备名称(在“断开连接”列表下),然后选择“通过IP地址连接....”选项。

在此处输入图片说明

  1. 输入设备的IP地址,然后选择“连接”。(您可以通过移动设备找到设置> Wi-Fi>选择wifi名称) 在此处输入图片说明

9
当我输入IP并点击“连接”时,它将永远加载:(
Shyam

@Shyam手机和Mac都使用相同的wifi吗?还要仔细检查您使用兼容的Xcode。
damithH

我很确定两者都使用相同的WiFi,并且Xcode版本是9.1,MacOS 10.13.1,iPhone 11.1。我希望问题出在网络上,当我使用其他网络时可以正常工作
Shyam

和我一样。但是有些时候可行,有些时候不可行...我需要关闭并打开xcode几次才能工作。两者都使用相同的WiFi,Xcode版本为9.1,MacOS 10.13.1,iPhone 11.1。
Wagner Sales

1
@Shyam需要一点..但是它有效,这是唯一对我有用的解决方案。谢谢达米斯!
更大的王

45

如果您已完成Surjeet给出的所有步骤,但仍未获得网络连接图标,请按照以下步骤操作:

  1. 通过右键单击“ 连接”部分中的设备来取消配对设备。

    在此处输入图片说明

  2. 重新连接设备。

  3. 从弹出窗口左侧的末尾单击“ +”按钮。

在此处输入图片说明

  1. 选择设备,然后单击下一步按钮

在此处输入图片说明

  1. 在设备上单击“ 信任”密码(如果有)

在此处输入图片说明

  1. 单击完成按钮。

在此处输入图片说明

  1. 现在,单击“ 通过网络连接”

在此处输入图片说明

现在,您可以在设备名称后面看到网络连接图标。请享用!

在此处输入图片说明


是否有范围限制之类的条件?因为当我连接它时,它开始启动我的应用程序并断开连接?
UserID0908

设备名称后面看不到网络连接图标。这个问题与wifi连接有关吗?
pallavi '18

是的,它奏效了,我想这是因为它以前没有使用PASSCODE配对,但是当我们在设备设置中启用密码时,我们需要再次重新配对设备
user924 '18

也许是的,如果您的设备未通过wifi连接,那么它将不会显示@pallavi
ios_dev

20

先决条件

  • 您的Mac计算机应至少具有Mac OSX 10.12.4或更高版本
  • 您的iOS设备应至少具有iOS 11.0或更高版本
  • 两个设备应该在同一网络上。

激活步骤

  • 通过电缆将iOS设备与Mac机连接。

  • 打开Xcode,然后从顶部菜单窗口->设备和模拟器

  • 选择设备段,然后从左侧设备列表中选择所需的设备。

  • 在右侧,您会看到打开“ 通过网络连接”,启用此选项,如图所示。 通过网络连接

  • 几秒钟后,您可以在设备前面看到网络标志。 在此处输入图片说明

  • 拔下设备的电源,然后像往常一样使用调试功能。

谢谢


1
您读过@Surjeet的答案了吗?这个答案不会增加任何可观的价值,也不会增加帖子的数量。
elGeekalpha

1
@elGeekalpha我开始关注未回答的问题,但他没有提及同一网络,因为我在通过网络连接时遇到了问题。是的,我的答案很大,但不是不必要的,因为我确实犯了错误,其他用户不会,而且这个答案也将对新手有所帮助。希望您能理解并且也能对您有所帮助:享受编码
Aleem

抱歉,我不想太粗鲁,但在我看来,第一印象是您写的是未经阅读的。感谢您的解释,也喜欢WWDC17!
elGeekalpha

3
“几秒钟后,您可以看到设备前面的网络标志。” <这个细节帮助了我
Jonny

1
我为图片感到高兴。“一千个单词”等等。
梅尔(Mel)


14

网络调试要求在MacOS 10.12.4或更高版本上运行Xcode 9.0或更高版本,并且在设备上需要iOS 11.0或更高版本或tvOS 11.0或更高版本。

苹果手机

iOS 11 不适用于32位设备,例如iPhone 5和iPhone 5c及更低版本。首款64位iPhone为5s。

的iPad

iPad mini 2将是支持iOS 11的最古老的iPad。

iPod

iPod必须是iPod 6才能运行iOS。

如果您不仅将设备用于开发,还用于生产,请注意,beta操作系统不适合胆怯的人;-)


2
iOS 11与这些设备兼容。iPhone iPhone 7 iPhone 7 Plus iPhone 6s iPhone 6s Plus iPhone 6 iPhone 6 Plus iPhone SE iPhone 5s iPad 12.9英寸iPad Pro第二代12.9英寸iPad Pro第一代10.5英寸iPad Pro 9.7英寸iPad Pro iPad Air 2 iPad Air iPad第五代iPad mini 4 iPad迷你3 iPad mini 2 iPod iPod touch第6代
Giang 2013年

实际上支持iPad Air-第一个64位iPad。
亚历克斯·布莱克

11

在新的Xcode9-beta中,我们可以使用Apple所说的无线调试

切断
电源线选择在本地网络上的任何iOS或tvOS设备来安装,运行和调试应用程序-无需在Mac上插入USB线。首次使用新的iOS设备时,只需单击“通过网络连接”复选框,此后该设备即可通过网络使用。无线开发还可以在其他应用程序中使用,包括仪器,辅助功能检查器,Quicktime Player和控制台。

尝试这个!

如果遇到断线问题,请尝试以下操作:

解决方法:在设备上启用飞行模式10秒钟,然后禁用飞行模式以重新建立连接


1
@Surjeet的答案更加全面。
Jeremy1026年

@Lacek我不确定,但是我怀疑两个设备都应该连接到同一WiFi网络。
D4ttatraya

我也对此表示怀疑,但是一旦让我感到惊讶的话,iOS发出的“我将不会通过蜂窝网络下载超过100 MB”消息的解决方案是什么?一个WIFI,然后iOS认为它正在使用WIFI ...我希望获得类似的破解,这次更多地参与其中。
Lacek

2
“在设备上启用飞行模式10秒钟”对您有所帮助!
sabiland

9

我刚刚与WWDC的一些Xcode工程师进行了交谈,但iDevices的自动发现仍然存在一些问题。同样,有时您的手机无法正确广播。打开和关闭设备会有所帮助。

有一些解决方法/后备方法:

您可以使用Bonjour Browser(www.tildesoft.com)检查手机是否正在广播。查看您的wifi地址是否列在名为'_apple-mobdev2._tcp的服务下。-215'(您可以在此处找到您的wifi地址:设置>常规>关于> wifi地址。

作为备用,您可以通过手动输入IP地址(在“设备”窗口中的设备上单击鼠标右键)来连接到设备。但是,该IP地址将保持不变,因此,如果您更改网络,则需要重置此地址。该选项在Xcode中尚不可用,但是您可以使用以下命令通过终端执行此操作:

defaults read com.apple.dt.Xcode | grep IDEIDS

这将打印一个标识符,您需要在下一个命令中使用该标识符:

defaults delete com.apple.dt.Xcode <identifier>

现在,该IP地址已清除,您可以输入一个新的IP地址。

最后一个选项是创建计算机到计算机网络。这可以正常工作,但从逻辑上讲,那时您将无法访问互联网。


在beta 4中,似乎没有更多选项可以手动设置IP。:(附带说明,我无法使Beta 6的iPhone 6s连接到Xcode 9
beta4。– iur

1
为了能够看到设置ip地址选项,我不得不从usb端口上拔下设备的
电源

5

您可以打开Xcode帮助->运行和调试->网络调试以获取更多信息。希望能帮助到你。


5

我遵循了所有建议的步骤,尤其是ios_dev提供的步骤,但是我的iPhone无法从Xcode识别,并且我无法通过WiFi进行调试。在“设备和模拟器”窗口中,在我的iDevice的左面板上单击鼠标右键,然后“通过IP地址...连接”,插入iPhone IP,现在它可以正常工作


2
请务必注意:必须断开设备与系统的连接才能显示此选项。
MichaelC

5

对于无线调试,Mac系统和iPhone /设备应位于同一网络上。 要在同一网络上进行制作,您可以执行以下操作-在Mac上启动热点,然后在iPhone /设备上连接热点,反之亦然。

在Mac上

在此处输入图片说明

要么

在iPhone上 -

在此处输入图片说明

Xcode►窗口►设备和模拟器►选择设备选项卡►单击通过网络连接 在此处输入图片说明

https://help.apple.com/xcode/mac/9.0/index.html?localePath=en.lproj#/devbc48d1bad


当我的iPhone XS Max设置为Personal Hotspot并将我的Macbook Pro连接到它时,我便无法将iPhone用作调试设备。对我而言唯一有效的无线调试方法是将它们都连接到同一个wifi路由器。在旅途中进行编码时,这非常烦人。我总是必须随身携带电缆。
Vilmir

4

我的问题是关于网络SSID广播。

我已经尝试了以上所有解决方案,但仍然无法连接我的设备,我的设备根本没有“ globe”图标。然后我发现由于某种原因我的网络关闭了其SSID广播(因此我仍然可以通过手动输入SSID来连接网络)。打开SSID广播后,可以通过“通过IP地址连接...”连接设备。


请提供您所遇到问题的更完整描述。Atleast如何解决“如何执行无线调试?”的问题 如果这是单独的问题,请创建一个新问题并回答
-Dhruvan Ganesh

3

我尝试了所有答案,但没有任何帮助。我最终连接到另一个WiFi网络,然后能够进行无线调试。

我不知道为什么它不能与旧网络一起使用


它对我的网络不起作用。连接到蓝牙使交易达成了协议...不确定它是否以任何方式或方式提供了帮助
Swift Rabbit

2

Xcode 9-有关详细信息,请转到帮助->将无线设备与Xcode配对(iOS,tvOS)


2

对我唯一有效的方法是使用蓝牙将手机连接到MacBook。(我首先按照ios_dev的回答通过电缆将手机与Xcode配对后完成了此操作。)

在手机上,我转到设置>蓝牙,然后在“我的设备”下点击我的MacBook的名称进行连接。

然后,我进入“ Xcode”>“设备和模拟器”,选择了我的手机并选中了“通过网络连接”。几秒钟后,地球图标出现在手机旁边,我可以在手机上运行和调试应用程序。

即使当我的MacBook连接到WiFi网络并且我的手机使用LTE时,此方法仍然有效。唯一的缺点是将应用程序安装到手机上的速度相当慢。


确实!在尝试了所有其他功能之后,立即使用蓝牙连接到我的Mac。
约翰尼·奥因

1

我可以使它正常工作的唯一方法是,如果Mac和iPhone位于不同的网络上。我有一个主DSL调制解调器,称为network1,第二个network2为我们设置了一个接入点。它们具有SSID网络1和网络2。如果电话在network1上,而mac在network2上,则可以使用,反之亦然。但是,如果两者都在网络1或两者都在入网2,它会工作。



1

尝试这个:

1)使用避雷线将iOS设备插入Mac。您可能需要选择信任此计算机在设备上。

2)打开Xcode,然后转到窗口 > 设备和模拟器

3)选择您的设备,然后选择“ 通过网络连接”复选框以配对设备。

4)拔下照明电缆后,运行项目。


1

大声笑,我在这里做了所有步骤-我最终完成了“ Surjeet提供”答案中的取消配对/修复步骤。它没有用,然后我注意到,当我单击“通过网络连接”按钮时,将弹出一个黄色框,当您进行维修时会弹出该框,说“忙”-我很沮丧,刚开始锤击“通过网络连接”按钮,快速单击它大概需要15到20次点击-它开始闪闪发光,但最终落在能够连接到网络上。在此之前,我还关闭了wifi,然后按照以下答案之一的建议再次将其打开,但是,单击“通过网络连接”按钮的速度确实很快,就可以解决问题了。

另外,在确定按钮之前,我链接了设备支持文件夹,尽管我不确定它是否起作用:

打开终端

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

ln -s 13.3 13.4

ls -l 13.4

重新启动Xcode并重试在设备上运行

据说要在这里做-https: //forums.developer.apple.com/thread/126940-我在评论中编辑了文件夹版本,以适应最新版本的iOS 13.4。

编辑 我相信我知道我的问题是什么,我不得不停止我的Little Snitch网络过滤器。另外,当我能够通过按一下按钮进行连接后,当您在xcode的设备管理器中右键单击该设备时,下拉菜单中会出现“通过IP地址连接”选项,但我无法进行连接首次出现超骇客风格。如果我连接了网络,然后打开它的网络过滤器,则它将断开手机的连接。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.