You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android应用WebView无法加载Chrome中可正常播放的2embed影视嵌入URL问题

问题原因
  • 现有WebView配置仅开启了JavaScript权限,缺少视频播放必需的配置项,且默认WebView的User-Agent标识与Chrome浏览器不一致,目标站点做了UA校验,会拦截非浏览器的访问请求
  • 未开启DOM存储权限,站点加载资源时需要依赖本地存储存储会话与配置信息,会导致资源加载失败
  • 未配置媒体播放相关权限,默认WebView要求用户手动触发才会播放媒体资源,且默认拦截第三方Cookie,导致站点鉴权失败
  • 未设置WebViewClient,WebView默认会调用系统浏览器打开外部链接,不会在当前组件内加载内容
可行解决方案

1. 补充WebView基础配置

修改后的完整WebView初始化代码如下:

setContentView(R.layout.activity_main);
webView = findViewById(R.id.WebView);
WebSettings webSettings = webView.getSettings();

// 基础权限配置
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setAllowFileAccess(true);

// 媒体播放配置
webSettings.setMediaPlaybackRequiresUserGesture(false);

// 混合内容加载配置,解决http资源在https页面无法加载的问题
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
}

// 修改UA为移动端Chrome的UA,绕过站点UA校验
String chromeUA = "Mozilla/5.0 (Linux; Android 13; SM-G998B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Mobile Safari/537.36";
webSettings.setUserAgentString(chromeUA);

// 允许第三方Cookie,通过站点鉴权
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    cookieManager.setAcceptThirdPartyCookies(webView, true);
}

// 配置页面加载客户端,让所有链接在当前WebView内加载
webView.setWebViewClient(new WebViewClient());
webView.setWebChromeClient(new WebChromeClient());

webView.loadUrl("https://www.2embed.ru/embed/imdb/movie?id=tt6806448");

2. 补充权限声明

在AndroidManifest.xml中添加网络访问权限:

<uses-permission android:name="android.permission.INTERNET" />

3. 兼容项说明

  • 建议使用Android 8.0及以上系统测试,低版本系统内置WebView内核对H265、AV1等新视频编码格式的兼容度较低,可能会出现播放异常
  • 如果站点有更严格的反爬校验,可将WebView的请求头参数、屏幕参数等调整为和真实Chrome浏览器一致,即可绕过拦截

内容的提问来源于stack exchange,提问作者vandit vasa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 18:45:01