是否可以在 safari 上检查调试模式发布的 iOS 应用程序?

dev*_*ing 5 safari xcode web-inspector ios

参考资料 1. 在 WWDC2016 上,Apple 宣布了 Web Inspector 权利。

\n\n
\n

“为了保护您的应用程序的完整性,我们不允许任何人下载您的应用程序并使用 Web Inspector 来浏览您的应用程序。

\n
\n
\n

因此,您需要将此权利添加到应用程序的权利文件中以进行本地开发。

\n
\n
\n

...您在开发时添加此内容,然后在发布应用程序时将其收回。然后,一旦您拥有此权利,您的设备和应用程序将显示在“开发”菜单中,您可以附加到它。将 Web Inspector 连接到 JSContext 和 WebView 也很简单 \xe2\x80\x94。”

\n
\n
\n

参考文献 2。Webkit.org 指南。

\n\n
\n

启用 Web Inspector 后,通过物理电缆或在 Xcode 中配置无线调试后将 iOS 设备连接到任何 macOS 机器,iOS 设备的名称将作为子菜单出现在 Safari 的“开发”菜单中(以及 Safari 技术预览) )在连接的 macOS 计算机上,允许远程检查:

\n
\n
    \n
  • Safari 中的任何页面
  • \n
  • 添加到主屏幕的网站
  • \n
  • 开发者配置的应用中的 Web 内容\n
      \n
    • SFSafariViewController
    • \n
    • WKWebView
    • \n
    • UIWeb视图
    • \n
    • JSContext
    • \n
    \n
  • \n
\n
\n

根据这些参考资料,我创建了一个带有“com.apple.webinspector.allow = 1”的权利文件并将其添加到我的项目中。

\n

在代码签名权利 - 调试中写下了权利的路径。

\n

之后,发现构建错误“配置配置文件不包括 webinspector 允许权利”。当我将“Any SDK”放在调试路径下时,它就消失了。

\n

将构建配置更改为“调试”和存档。

\n

最后通过 FTP 服务器下载并安装了我的应用程序,但仍然无法在 mac safari 上调试 WKWebView。我仍然看到灰色的“没有可检查的应用程序”。句子。

\n

我尝试了Xcode 12.4、最新版本的safari、safari技术预览版。

\n

我是否错过了什么或者无法检查下载的 iOS 应用程序?

\n

Mat*_*usz 1

仅当 iOS 应用程序从 Xcode 运行时,您才可以在 Safari Web Inspector 中调试 Web 内容。

您不必添加任何权利 - 您提到的权利仅适用于 macOS 应用程序。

来自https://developer.apple.com/videos/play/wwdc2016/420/?time=351

现在,对于 iOS,应用程序仅在您从 Xcode 构建并运行它们时才会显示。

但当我们谈论 Mac 应用程序时,您还需要做一件事。为了保护您的应用程序的完整性,我们不允许任何人下载您的应用程序并使用 Web Inspector 来浏览您的应用程序。因此,您需要将此权利添加到应用程序的权利文件中以进行本地开发。