#html5-video #android-fullscreen #html5-fullscreen
Вопрос:
У меня есть веб-сайт, и я использую App Inventor для создания приложения для Android для своего веб-сайта. У меня есть сообщения с видео в формате html, но каждый раз, когда я захожу в приложение, чтобы посмотреть свои видео в приложении, я не могу войти в полноэкранный режим!!
Ответ №1:
Решение для включения полноэкранного просмотра интернет-видео при доступе в WebView для таких сайтов, как Youtube или любой другой потоковый сайт.:
Допустим, у вас есть эта переменная, и вы использовали функцию findViewById() в onCreate для ее настройки. Мы также использовали MainActivity в качестве переменной для ссылки на действие, содержащее веб-представление.
Следуйте приведенным ниже инструкциям
WebView webView;
Activity mainActivity = this; // If you are in activity
Activity mainActivity = getActivity(); // If you are in fragment
Затем выполните этот шаг
webView.getSettings().setJavaScriptEnabled(true); //Enable Javascript
webView.getSettings().setDomStorageEnabled(true); //enable local storage for WebView
webView.setWebChromeClient(new WebChromeClient()
{
private View mCustomView;
private WebChromeClient.CustomViewCallback mCustomViewCallback;
protected FrameLayout mFullscreenContainer;
private int mOriginalOrientation;
private int mOriginalSystemUiVisibility;
public Bitmap getDefaultVideoPoster()
{
if (mainActivity == null) {
return null;
}
return BitmapFactory.decodeResource(mainActivity.getApplicationContext().getResources(), 2130837573);
}
public void onHideCustomView()
{
((FrameLayout)mainActivity.getWindow().getDecorView()).removeView(this.mCustomView);
this.mCustomView = null;
mainActivity.getWindow().getDecorView().setSystemUiVisibility(this.mOriginalSystemUiVisibility);
mainActivity.setRequestedOrientation(this.mOriginalOrientation);
this.mCustomViewCallback.onCustomViewHidden();
this.mCustomViewCallback = null;
}
public void onShowCustomView(View paramView, WebChromeClient.CustomViewCallback paramCustomViewCallback)
{
if (this.mCustomView != null)
{
onHideCustomView();
return;
}
this.mCustomView = paramView;
this.mOriginalSystemUiVisibility = mainActivity.getWindow().getDecorView().getSystemUiVisibility();
this.mOriginalOrientation = mainActivity.getRequestedOrientation();
this.mCustomViewCallback = paramCustomViewCallback;
((FrameLayout)mainActivity.getWindow().getDecorView()).addView(this.mCustomView, new FrameLayout.LayoutParams(-1, -1));
mainActivity.getWindow().getDecorView().setSystemUiVisibility(3846);
}
});