如何在IOS Action App Extension中调试JavaScript?

BSh*_*oks 6 javascript ios

使用iOS,Action App Extension,可以运行针对HTML的JavaScript代码.但是,经过对Google的一些搜索后,我还没有找到任何解释如何在这种情况下进行调试的文档(插入一个断点或只是添加/查看控制台out语句).

J. *_*man 4

这并不太难,尽管最近我遇到了连接到模拟器时显示页面的问题。在这种情况下,我就直接使用手机了。(显然,您需要在 iOS 模拟器开始检查“远程”模拟器会话后启动桌面 Safari)

  • 确保设备上的开关Settings->Safari->Advanced->Web Inspector已打开
  • (确保您已从设备信任计算机)
  • 通过从 Xcode 运行并选择 Safari 来启动设备上的 MobileSafari——这不是必需的,但您也可以解码 iOS Objective-C/Swift 代码。您只需手动启动 MobileSafari,它将在桌面 Safari 中可见。

  • 在桌面上启动 Safari,确保Show Develop menu in menu barPreferences.

  • Develop菜单中,您将看到您的设备名称,例如“BSharer's iPhone”
  • 选择设备名称下方的页面名称,例如“en.m.wikipedia.org - Wikipedia”。

您现在正在桌面上调试该设备页面。

有“自动启动调试器等...”的选项,但我发现当我尝试这些时,我的代码将不会执行。

您无法将调试器语句放置在应用扩展 JavaScript 中,因为在应用扩展启动之前不会注入调试器语句。相反,我会debugger;在应用程序扩展 JavaScript 代码中添加一条语句,该语句将在应用程序扩展 JavaScript 代码中暂停调试器debugger;语句处暂停应用程序扩展 JavaScript 代码中的调试器。

通过在菜单中选择应用程序扩展来启动它Share,设置您感兴趣的任何其他断点,然后点击调试器上的继续按钮。

当然,您还会捕获未捕获的异常。

这方面的官方文档在这里

确保debugger;从生产代码中删除该行。