Веб-просмотр HTML-видео в полноэкранном режиме - onShowCustomView() вызывается только один раз
Я использую HTML video tag
для воспроизведения видео в Android Webview. Однако, когда я пытаюсь нажать кнопку полноэкранного режима, onShowCustomView()
Из веб-браузера Chrome клиент вызывается только в первый раз. Каждый раз, когда я нажимаю полноэкранную кнопку, функция onShowCustomView()
не называется.
Что я хочу, так это то, что каждый раз, когда я нажимаю полноэкранную кнопку, должна вызываться onShowCustomView().
Webview
webView.getSettings().setMediaPlaybackRequiresUserGesture(false);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setPluginState(WebSettings.PluginState.ON);
webView.getSettings().setAppCacheEnabled(true);
webView.setWebChromeClient(mClient);
webView.setWebViewClient(new WebViewClient());
HTML-видео тег
<div>
<!--<img id="videoImage" src="img/UI_homepage_innovation.png" style="cursor:pointer" onclick="play()"/>
<iframe id="video" style="display:none;" src="http://www.youtube.com/embed/SNMjzPRQUA8?modestbranding=1&rel=0&showinfo=0&autohide=1&fs=0&autoplay=1" frameborder="0" #allowfullscreen></iframe>-->
<video poster="img/UI_homepage_innovation.png" controls>
<source src="video/sintel.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>
Webview Chrome Client
public class MyChromeClient extends WebChromeClient {
@Override
public void onShowCustomView(View view, CustomViewCallback callback) {
Log.v("Testing", "onShowCustomView");
}
@Override
public void onHideCustomView() {
Log.v("Testing", "onHideCustomView");
}
}
1 ответ
Для того, чтобы это работало правильно, я узнал, что мне нужно получить Holder просмотра видео и поместить его в другой вид. Тем не менее, я хотел использовать свой собственный полноэкранный вид.
Для этого я создал свои собственные HTML-элементы управления видео для использования CSS и Javascript и использовал кнопку "полный экран", чтобы каждый раз вызывать свой пользовательский полноэкранный режим. Работал как шарм!