用电脑调试 iPad 游猎

我想在我的 iPad 上测试我的 Safari 网站。我只有一台电脑。有没有一种方法可以让我像 ADB 一样使用手机 Chrome 进行远程调试?我在 StackOverflow 上搜索了一下,似乎有一个 Adobe Edge InspectCC,但我不知道这是不是一个好的选择。

谢谢!

87049 次浏览

我还没有在个人电脑上试过,但是你应该可以访问 http://[ DevICE _ IP _ ADDRESS ] : 9999进行调试。

我使用预处理 CSS 的预处理和它有一个内置的服务器移动调试和网络检查。但这只对当地的网站有好处,即使..。

2018年更新:

自从原来的帖子,博客帖子是死的和 Telerik App Builder 已停用,不再提供。添加此更新,以便通知读者,以防他们没有阅读这篇回复文章后面的用户评论。至于博客文章,对于那些仍然感兴趣的人,这里有一个 网络缓存副本。关于博客,我想博客所属的公司已经倒闭了。

当我有机会的时候,我会看看我是否保存了应用程序生成器的副本,这样我就可以把它发布到网上,以便那些仍然对使用它感兴趣的人,也许还有另一个缓存的博客文章副本。

原始答案

在远程调试时,您可以尝试在 Windows 上使用 Telerik AppBuilder (Windows 客户端)作为 Mac 上 Safari 调试器的替代品。在下面的链接中有一篇很好的博客文章介绍了这样做的步骤。我宁愿不重新发布的信息,因为也有截图,这是一个很大的文字。但本质上,你安装应用程序,打开它,通过 USB 连接设备,然后你可以在应用程序中找到它,并为它打开开发工具/调试器。对于非公共网站,您必须打开端口80与一些防火墙配置文档在后面。

Http://blog.falafel.com/blogs/josh-eastburn/2014/03/04/ios-web-inspector-on-windows-with-telerik-appbuilder

该工具需要一个许可证,或者您可以使用试用版,这将成为以后的基本版本。我认为基本版本仍然允许您进行调试。我要亲自试试。

你也可以试试这些 iOS 应用程序,你可以在 iTunes 应用程序商店中找到它们。它们提供了一个内置的开发工具特性(就在 iOS 上没有远程调试) ,而移动 Safari 没有提供这个特性。

MIH 工具-基本版 Https://itunes.apple.com/us/app/mihtool/id584739126?ls=1&mt=8

HTTPWatch Basic Https://itunes.apple.com/us/app/httpwatch-basic-http-sniffer/id658886056?mt=8

我尝试了一下,它们至少比 iOS 上的移动版 Safari 要好,除非你需要瞄准完全的移动版 Safari 兼容性。我猜这些应用程序的付费版会提供更多更好的功能。

根据我的经验,这通常不仅仅是手机 Safari 的问题,而是 Safari 的普遍问题。在这些情况下,它可以帮助尝试正常的 Safari (Windows) ,看看是否有错误出现在那里。如果是这样,通过这种方式调试就容易得多。

请参阅 猴子德夫的回答,了解在带有 iOS9 + 的 Windows8 + 机器上进行调试的最简单方法。我更新了 我的博客文章使用的信息从该答案和其他来源,也 录制了一个屏幕分享。如果需要的话,下面的方法仍然适用于 iOS8或者 iOS8以下版本。

实际上,在 Windows 机器上使用 Firefox 在 iOS 上调试 Safari 网站是一种非常简单的方法。

注意: Ryan 在下面的评论中写道,这可能只适用于 iOS8及以下版本。我无法确认,但请注意。

关于这一点,我写了一篇 详细的博客文章文章,以下是其中的亮点:

  1. 安装 iTunes 以获得“苹果移动设备支持”和“苹果应用程序支持”应用程序。(如果你想的话,可以之后卸载 iTunes)
  2. 通过 USB 连接你的 iOS 设备。
  3. 在 iOS 上启用 web 检查器 (可在 iOS 6及更高版本上使用)。
  4. 在 iOS 设备上打开 Safari 浏览器,浏览到一个网站。
  5. 在 Windows 机器上打开 Firefox,然后按 Shift + F8打开 WebIDE,如果您使用 Firefox Developer Edition (任何版本)或 Firefox 37及更高版本(任何频道) ,那么 WebIDE 应该包含必要的 瓦兰斯附加组件。
  6. 出于某种原因,我无法让它连接到我的 iOS 设备,直到我下载了 Ios-webkit-debug-xy-win32程序并运行它。它会打开一个空白的命令提示符,但是当我打开它后回到 WebIDE,我断开连接,然后重新连接,我看到了我在 Safari 中打开的网站的调试信息。但是您可能不需要这样做,因为另一个用户只需要在他们的防火墙中添加一个异常,然后断开/重新连接,就可以了。

可用的调试信息并不像 Chrome 开发工具那样详尽(特别是没有“网络”标签) ,但是它足以让我能够查看控制台中正在发生的事情。

enter image description here

2019年10月最新情况

这个解决方案不适用于 IOS 12 + (资源1资源2)。

于2017年6月24日更新及测试

Windows8和更新的版本上使用 铬合金:

使用 Powershell (作为管理员) :

npm install remotedebug-ios-webkit-adapter -g

  • 执行适配器:

使用 Powershell (作为管理员) :

remotedebug_ios_webkit_adapter --port=9000

你应该得到类似的输出:

C: Windows system 32 > Remotedebug _ ios _ webkit _ Adapter —— port = 9000 Remotedebug-ios-webkit-Adapter 正在监听端口9000 IosAdapter. getTargets ..

  • 打开 铬合金,进入以下连结:

铬://检查/# 设备

  • 点击“发现网络目标”旁边的 configure 并添加以下内容: Localhost: 9000

一定要有网页,你想调试打开在 Safari,你应该看到它在铬检查页下 远程目标

IOS 11的额外步骤感谢@skaurus

这个问题已经过去4年多了,但是我觉得值得一提的是另一个独立于平台的选项,这个选项似乎在上面没有提到:

VConsole

这是一个 JavaScript,你可以注入到你的页面中,它会覆盖所有的本地控制台输出,并显示在你的页面内容之上的一个覆盖层,其细节水平堪比谷歌 Chrome 的开发者工具。

在 iOS Safari 以及其他移动浏览器上运行良好——只要浏览器中启用了 JavaScript。

如何安装: https://www.npmjs.com/package/vconsole

您将需要 NPM 工具来安装它,但实际上并不需要使用 NPM 来构建项目。您可以简单地将 VConsole 安装在一个单独的文件夹中的某个位置,然后从中复制粘贴 VConsole.min.js。

一旦你把它注入到你的页面中,就会像这样:

<script type="text/javascript" src="vconsole.min.js"></script>
<script type="text/javascript>let vc = new VConsole(); // this will initialize it.</script>

在视觉上非常吸引人,你会在你的移动/桌面浏览器页面的右下角看到绿色按钮,它会打开控制台覆盖。

太棒了!

当然,它不能提供选择元素、查看计算的 css 等的能力,但是如果您正在寻找控制台输出和一些网络报告,那么它确实很容易使用。

2019年10月

AFAIK,对于最近的 IOS 版本,没有从 PC 调试 IOS 的整体解决方案。

但是,您可以使用下列解决方案之一:

  1. 在浏览器中显示控制台消息。如 给你和 Sinisa 的回答所述。
  2. “ Remotedebug-IOS-webkit-Adapter”不适用于调试 IOS 12 + 。它需要为 IOS 11执行额外的步骤,并且也可以为 IOS 10或者更老的版本工作。

2021年最新情况:

这里是 RemoteDebug 的创建者。我已经为 RemoteDebug 构建了一个名为 检查的替代品,它将所有东西打包在一起,给人一种愉快的体验,并支持从 Windows、 macOS 和 Linux 轻松调试 iOS 网络,还有一些额外的功能,比如屏幕播放和 wifi 调试。

Http://inspect.dev