在 macOS 应用程序中使用 Safari 调试 JavaScriptCore
Debugging JavaScriptCore with Safari, in macOS app
我为 OSX 制作了一个简单的 Hello World 应用程序,它使用 C-APIs 创建上下文组、上下文、运行脚本并调用我自己的函数,一切都很好。
但我不能做的是让我的 app/JSContext 出现在 Safari 的可检查应用程序列表中。 (它只是空的)
我不知道这是否应该是自动的,或者我是否需要在上下文、VM 等中启用某些东西(在文档中找不到任何关于 debuggable/inspectable 的引用,headers)
这个项目声称这样做(基于 wiki 中的屏幕截图),但是查看代码我看不到任何特定的配置选项、设置等
https://github.com/kasper/phoenix
这个答案表明 iOS 应用程序需要签名...这对 macOS 应用程序来说也是必需的吗?
Safari: no Inspectable applications
使用 Xcode 10B61,Safari 11.1.2,OSX 10.13.6
有人设法使用 Safari 调试 macOS 应用程序吗?
我用我的 Apple Dev 帐户签署了该应用程序(在我发布此问题后我出于不同的原因续订了它)并且它出现在 Safari 中,(并且中断,让我调试)并且运行良好!
如果您希望已发布的应用程序(即 Xcode 的调试器中的 运行 不可用)能够在 运行 JSC 代码时使用 Safari Web Inspector 调试器,您需要将 com.apple.security.get-task-allow
添加到您的权利中。
警告:您无法获得具有由 Apple 公证的权利的应用程序。
这意味着您可能需要同时交付未经 JS 调试的经过公证的应用程序,以及未经公证且允许调试的应用程序。
我为 OSX 制作了一个简单的 Hello World 应用程序,它使用 C-APIs 创建上下文组、上下文、运行脚本并调用我自己的函数,一切都很好。
但我不能做的是让我的 app/JSContext 出现在 Safari 的可检查应用程序列表中。 (它只是空的)
我不知道这是否应该是自动的,或者我是否需要在上下文、VM 等中启用某些东西(在文档中找不到任何关于 debuggable/inspectable 的引用,headers)
这个项目声称这样做(基于 wiki 中的屏幕截图),但是查看代码我看不到任何特定的配置选项、设置等 https://github.com/kasper/phoenix
这个答案表明 iOS 应用程序需要签名...这对 macOS 应用程序来说也是必需的吗? Safari: no Inspectable applications
使用 Xcode 10B61,Safari 11.1.2,OSX 10.13.6
有人设法使用 Safari 调试 macOS 应用程序吗?
我用我的 Apple Dev 帐户签署了该应用程序(在我发布此问题后我出于不同的原因续订了它)并且它出现在 Safari 中,(并且中断,让我调试)并且运行良好!
如果您希望已发布的应用程序(即 Xcode 的调试器中的 运行 不可用)能够在 运行 JSC 代码时使用 Safari Web Inspector 调试器,您需要将 com.apple.security.get-task-allow
添加到您的权利中。
警告:您无法获得具有由 Apple 公证的权利的应用程序。
这意味着您可能需要同时交付未经 JS 调试的经过公证的应用程序,以及未经公证且允许调试的应用程序。