Che*_*eng 5 android webview react-native-android android-8.1-oreo
我遇到一个奇怪的问题。
我有一个应用程序,它有一个 webview 来显示一些文章。这些文章有文字、图片和视频,这个 webview 支持全屏播放视频。
这是 onShowCustomView 和 onHideCustomView 的代码。它运行良好,直到 Android 8.1。
@Override
public void onShowCustomView(View view, CustomViewCallback callback) {
if (mVideoView != null) {
callback.onCustomViewHidden();
return;
}
mVideoView = view;
mCustomViewCallback = callback;
view.setBackgroundColor(Color.BLACK);
getRootView().addView(view, FULLSCREEN_LAYOUT_PARAMS);
mWebView.setVisibility(View.GONE);
// enable orientation change
setOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
}
@Override
public void onHideCustomView() {
if (mVideoView == null) {
return;
}
mVideoView.setVisibility(View.GONE);
getRootView().removeView(mVideoView);
mVideoView = null;
mCustomViewCallback.onCustomViewHidden();
mWebView.setVisibility(View.VISIBLE);
// force portrait
setOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
Run Code Online (Sandbox Code Playgroud)
在 AndroidManifest 中,活动如下所示:
<activity
android:name=".component.ArticleActivity"
android:configChanges="orientation|screenSize"
android:hardwareAccelerated="true"
android:screenOrientation="portrait" />
Run Code Online (Sandbox Code Playgroud)
在 Android 8.1 中,当全屏播放视频时,将方向更改为横向或纵向,将调用 onHideCustomView 并退出全屏模式。
我该如何解决?谢谢
| 归档时间: |
|
| 查看次数: |
538 次 |
| 最近记录: |