继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

react-native webview android 网页播放视频全屏处理

桔子万
关注TA
已关注
手记 2
粉丝 1
获赞 3

最近RN项目中接入某在线直播 web sdk,直播视频播放,在 android 下无法全屏播放。原因是 React Native 的 android webview 无法默认支持网页全屏播放视频。

查询资料发现,可以通过第三方库 react-native-android-fullscreen-webview-video 来解决。 项目地址: https://github.com/teamairship/react-native-android-fullscreen-webview-video

用法:把 RN 的原生 WebView 引用修改为 'react-native-android-fullscreen-webview-video',如下:

import { WebView } from 'react-native';
// 替换成
import WebView from 'react-native-android-fullscreen-webview-video';

然后其他用法和React native 用法一致。通过源码可以发现,该库在 ios 下使用 RN 的默认 WebView,在 android 下,通过原生代码对 WebView 增强,实现了网页播放视频全屏。部分代码如下:

## react-native-android-fullscreen-webview-video/index.js 文件
import { Platform } from 'react-native';
import androidWebView from './androidWebView';
import iosWebView from './iosWebView';

const CustomWebView = Platform.OS === 'ios' ? iosWebView : androidWebView;

module.exports = CustomWebView;
## react-native-android-fullscreen-webview-video/iosWebView.js 文件
import { WebView } from 'react-native';

export default WebView;
打开App,阅读手记
2人推荐
发表评论
随时随地看视频慕课网APP