我正在尝试创建一个使用WebView2 WPF 组件的应用程序。目前,我正在努力记录由网站的 javascript 代码编写的消息和错误,使用console.log().
这就是我现在所拥有的:
public partial class WebView2BrowserControl : WebView2
{
private async void OnWebViewLoaded(object sender, RoutedEventArgs e)
{
await EnsureCoreWebView2Async();
if (showDeveloperTools)
{
CoreWebView2.GetDevToolsProtocolEventReceiver("Log.entryAdded").DevToolsProtocolEventReceived += OnConsoleMessage;
CoreWebView2.OpenDevToolsWindow();
}
else
{
CoreWebView2.Settings.AreDevToolsEnabled = false;
}
}
private void OnConsoleMessage(object sender, CoreWebView2DevToolsProtocolEventReceivedEventArgs e)
{
if (e != null && e.ParameterObjectAsJson != null)
{
Trace.WriteLine("WebView2:" + e.ParameterObjectAsJson);
}
}
}
Run Code Online (Sandbox Code Playgroud)
如您所见,我使用GetDevToolsProtocolEventReceiver方法来订阅 DevTools 中的事件。该文档说明如下:
eventName:String - 事件的完整名称,格式为 {domain}.{event}。 有关 DevToolsProtocol 事件描述和事件参数的更多信息,请导航至 DevTools Protocol Viewer。
...根据DevTools …
我正在用 expo 为原生的 Android 开发应用程序。我正在使用 expo 的 Audio.Sound API 来在我的应用程序中播放不同的声音。令我烦恼的是,每当我按下 TouchableOpacity 组件时,我都会同时收到我的声音和来自 Android 的默认 onPress 声音(只有当我将手机硬件按钮的声音静音时,它才会消失)。我想禁用默认声音。有没有办法从本机代码以编程方式执行此操作?