Код для полноэкранной кнопки webview-youtube, которая работала до версии Android O (8.0), не относится к версии Android Pie (9.0).
Я попробовал большинство методов, представленных в stackoverflow, блог,и т.д., но это не сработало для меня.Я приложил несколько ссылок, которые я попробовал следующим образом.
Параметр полного экрана недоступен при загрузке видео YouTube в WebView
https://blog.asamaru.net/2016/08/12/playing-html5-video-on-fullscreen-in-android-webview/
https://discourse.nativescript.org/t/android-video-fullscreen-not-working-in-webview/5441
Я применяю WebChromeClient к своему веб-просмотру.и переопределить onShowCustomView и onHideCustomView, как это.currentWebview, etcMenuLayout, linBottomBar - это макет для моих кнопок.Я пытаюсь скрыть, когда YouTube полноэкранный режим.(работает до версии Android Pie.)
@Override
public void onShowCustomView(View view, WebChromeClient.CustomViewCallback callback) {
Toast.makeText(mContext, "CLICKED", Toast.LENGTH_SHORT).show();
// super.onShowCustomView(view, callback);
mActivity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
currentWebview.setVisibility(View.INVISIBLE);
etcMenuLayout.setVisibility(View.GONE);
linBottomBar.setVisibility(View.GONE);
mFullscreenContainer = new FullscreenHolder(mActivity);
customViewContainer = findViewById(R.id.customViewContainer);
customViewContainer.setVisibility(View.VISIBLE);
customViewContainer.addView(view);
}
@SuppressWarnings("deprecation")
@Override
public void onShowCustomView(View view, int requestedOrientation, WebChromeClient.CustomViewCallback callback) {
this.onShowCustomView(view, callback);
}
@Override
public void onHideCustomView() {
// super.onHideCustomView();
mActivity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
currentWebview.setVisibility(View.VISIBLE);
etcMenuLayout.setVisibility(View.GONE);
linBottomBar.setVisibility(View.VISIBLE);
customViewContainer.setVisibility(View.GONE);
customViewContainer = null;
}
Есть ли какое-нибудь решение для работы на Android Pie?