2016-05-07 18 views
1

Gibt es eine Möglichkeit, den WebKit-Inspektor für ein WKWebView programmatisch darzustellen? Ich bin mir bewusst, wie zu enable the inspector for a WKWebView, aber was ich tun möchte, ist, ähnlich wie described here für ein WebView, in der Lage sein, um es auch direkt auf dem Bildschirm programmatisch aus meinem eigenen Code. Die Verwendung privater APIs und anderer Hacks ist für mich selbstverständlich in Ordnung, da dies nur zu Debugging-Zwecken dient. Der Anwendungsfall, den ich dafür in meinem Debugging-Fluss habe, ist ein WKWebView in meiner Desktop-basierten App, wo die Rechtsklick-Ereignisse, die normalerweise ein Kontextmenü zulassen würden, für etwas anderes, app-spezifisch verwendet werden können.Wie programmiere ich den WebKit Inspector für ein WKWebView?

Als Workaround wäre ich glücklich mit allen Mitteln, die nicht mit der rechten Maustaste in die Webansicht selbst, um den Inspektor aufzurufen.

+0

Vielleicht ziehen Sie durch Safari-Menü klicken könnte mit Apfel-Skript: http://apple.stackexchange.com/a/118144 – Onato

+0

Wenn ich mich nicht irre, würde mir nur helfen, die Ins zu bekommen pector up für den iOS-Simulator? Mir war nicht bewusst, dass es eine Möglichkeit gibt, den Inspektor von Safari zu einer Mac-App zu öffnen. – mz2

Antwort

1

Den Rechtsklick wiederherstellen, nicht wahr? Interessant.

Ich musste einen großen Teil der WKWebKit2 C API-Header in den Build meiner schnellen App plombieren.

Grob gesagt, die JS-Konsole zu ziehen:

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

Die blutigen Details: https://github.com/kfix/MacPin/commit/5fed6cb01ab88170f1387122748f8c4ae9e2cab5#diff-c5ffd49d5bf2cde5e056621f9ab14545R426

Sie müssen in WKBase.h und WKView+Privates.h

Verwandte Themen