扫码关注官方订阅号
如在UIWebView中打开一个优酷的视频页面,点击播放按钮,如何禁止调用系统播放器进行播放,而调用自定义的播放器播放。
欢迎选择我的课程,让我们一起见证您的进步~~
测试了下 <UIWebViewDelegate> 也拦截不到点击视频播放的操作,所以大概思路只有用 javascript 去修改加载的页面,把视频元素替换成一个自定义 URL 请求,然后在 shouldStartLoadWithRequest 中接到点开视频的响应,从而进行自定义播放器播放,前提是能分析出播放地址。
<UIWebViewDelegate>
shouldStartLoadWithRequest
通常来说此类视频拦截的做法都是一个复杂的处理过程,大约涉及到以下步骤: 1、通过后端算法针对不同的视频详情页,挖掘出真正的视频地址。 2、前端打开视频网站详情页链接时,同步向后端请求两个数据: 1)视频流链接地址(有可能是多段)。 2)网页内注入脚本代码(通过[webView stringByEvaluatingJavaScriptFromString:jsStr]注入,一般是替换播放按钮或者增加监听事件让用户点击视频时通过jsbridge唤起客户端播放器)
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
测试了下
<UIWebViewDelegate>也拦截不到点击视频播放的操作,所以大概思路只有用 javascript 去修改加载的页面,把视频元素替换成一个自定义 URL 请求,然后在shouldStartLoadWithRequest中接到点开视频的响应,从而进行自定义播放器播放,前提是能分析出播放地址。通常来说此类视频拦截的做法都是一个复杂的处理过程,大约涉及到以下步骤:
1、通过后端算法针对不同的视频详情页,挖掘出真正的视频地址。
2、前端打开视频网站详情页链接时,同步向后端请求两个数据:
1)视频流链接地址(有可能是多段)。
2)网页内注入脚本代码(通过[webView stringByEvaluatingJavaScriptFromString:jsStr]注入,一般是替换播放按钮或者增加监听事件让用户点击视频时通过jsbridge唤起客户端播放器)