HLS ビデオを再生するために Microsoft Edge (Chromium) に Chrome 拡張機能をインストールしました。Microsoft Edge (Chromium) で試してみましたが、問題なく動作します。HLS の URL はhttp://localhost/hls/taiguo/playlist.m3u8で、Microsoft Edge ブラウザーでは次のように表示されます。プレイリスト.m3u8 .
[Getting Started with WebView2 (developer preview)] ( https://docs.microsoft.com/en-us/microsoft-edge/hosting/webview2/gettingstarted ) サンプル コードに従って、WebView2 を使用して Windows アプリケーションにブラウザーを埋め込む場合:
` CreateCoreWebView2EnvironmentWithDetails(nullptr, nullptr, nullptr, Callback( [hWnd](HRESULT result, ICoreWebView2Environment* env) -> HRESULT {
RETURN_IF_FAILED(result);
// Create a CoreWebView2Host and get the associated CoreWebView2 whose parent is the main window hWnd
env->CreateCoreWebView2Host(hWnd, Callback<ICoreWebView2CreateCoreWebView2HostCompletedHandler>(
[hWnd](HRESULT result, ICoreWebView2Host* host) -> HRESULT {
if (host != nullptr) {
webviewHost = host;
webviewHost->get_CoreWebView2(&webviewWindow);
}
// Add a few settings for the webview
// this is a redundant demo step as they are the default settings values
ICoreWebView2Settings* Settings;
webviewWindow->get_Settings(&Settings);
Settings->put_IsScriptEnabled(TRUE);
Settings->put_AreDefaultScriptDialogsEnabled(TRUE);
Settings->put_IsWebMessageEnabled(TRUE);
// Resize WebView to fit the bounds of the parent window
RECT bounds;
GetClientRect(hWnd, &bounds);
webviewHost->put_Bounds(bounds);
// Schedule an async task to navigate to Bing
webviewWindow->Navigate(L"http://localhost/hls/taiguo/playlist.m3u8");`
上記のコードを実行すると、アプリはビデオを再生せずにプレイリスト.m3u8 ファイルをダウンロードするだけです。webviewWindow->Navigate(...) の URL パラメータを次のように変更すると:
webviewWindow->Navigate(L"extension://ekcifneimckhkjdfklkkpdlnckcjhmke/index.html#http://localhost/hls/taiguo/playlist.m3u8");
その後、次のようなエラー メッセージが表示されます。 アプリの画面キャプチャ
誰かが WebView2 API を使用して拡張機能を実行する方法を教えてくれることを願っています。