Swift 如何以编程方式显示WKWebView的WebKit检查器?

Swift 如何以编程方式显示WKWebView的WebKit检查器?,swift,macos,cocoa,webkit,wkwebview,Swift,Macos,Cocoa,Webkit,Wkwebview,是否有一种方法可以通过编程方式显示WKWebView的WebKit检查器?我知道如何实现,但我想做的是,与WebView类似,也能够通过编程从我自己的代码中直接在屏幕上弹出它。对我来说,使用私有API和其他黑客当然可以完成,因为这只是为了调试目的 在我的调试流程中,我的用例是基于桌面的应用程序中的WKWebView,其中的右键单击事件通常允许上下文菜单用于其他特定于应用程序的内容 作为一种解决方法,您会很高兴使用任何不涉及在web视图本身中单击鼠标右键的方法来显示检查器。收回右键单击,是吗?有趣

是否有一种方法可以通过编程方式显示WKWebView的WebKit检查器?我知道如何实现,但我想做的是,与WebView类似,也能够通过编程从我自己的代码中直接在屏幕上弹出它。对我来说,使用私有API和其他黑客当然可以完成,因为这只是为了调试目的

在我的调试流程中,我的用例是基于桌面的应用程序中的WKWebView,其中的右键单击事件通常允许上下文菜单用于其他特定于应用程序的内容


作为一种解决方法,您会很高兴使用任何不涉及在web视图本身中单击鼠标右键的方法来显示检查器。

收回右键单击,是吗?有趣

我不得不将WKWebKit2 C API头的很大一部分插入我的swift应用程序的构建中

大致来说,要打开JS控制台:

WKInspectorShowConsole(WKPageGetInspector((wkwebview.subviews.first as!WKView.pageRef))

血淋淋的细节:


你需要拉入
WKBase.h
WKView+Privates.h

也许你可以用苹果脚本点击safari的菜单:除非我弄错了,否则这只会帮我找到iOS模拟器的检查器?我不知道有没有办法将inspector从Safari打开到Mac应用?