android webview 加载网络视频

简介:
webView.loadUrl(video_url);
webView.setInitialScale(50);
WebSettings setting = webView.getSettings();
setting.setUseWideViewPort(true);
        setting.setJavaScriptEnabled(true); //Support JavaScript
        setting.setPluginsEnabled(true); //Support Plugins, for example just like flash plugin.
        setting.setSupportZoom(true); //Zoom Control on web (You don't need this if ROM supports Multi-Touch  
        setting.setBuiltInZoomControls(true); //Enable Multitouch if supported by ROM
        
        webView.setWebViewClient(new MyWebViewClient());


public class MyWebViewClient extends WebViewClient  {      

private ProgressDialog loadingBar;


@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
loadingBar=ProgressDialog.show(mActivity, null, "正在加载…");
super.onPageStarted(view, url, favicon);
}

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);  // webview里面的链接还在同一个页面中加载 
        return true;  
}


@Override
public void onPageFinished(WebView view, String url) {
if(loadingBar.isShowing()){
loadingBar.dismiss();
       }
super.onPageFinished(view, url);
}         
  
@Override
       public void onReceivedError(WebView view, int errorCode,
               String description, String failingUrl) {
           Toast.makeText(mActivity, "加载出错!", Toast.LENGTH_LONG).show();
           final AlertDialog alertDialog = new AlertDialog.Builder(mActivity).create();
           alertDialog.setTitle("ERROR");
           alertDialog.setMessage(description);
           alertDialog.setButton("OK", new DialogInterface.OnClickListener(){
               @Override
               public void onClick(DialogInterface dialog, int which) {
               
alertDialog.dismiss();
               }
           });
           alertDialog.show();
       }
     }

目录
打赏
0
0
0
0
65
分享
相关文章
目标检测实战(一):CIFAR10结合神经网络加载、训练、测试完整步骤
这篇文章介绍了如何使用PyTorch框架,结合CIFAR-10数据集,通过定义神经网络、损失函数和优化器,进行模型的训练和测试。
195 2
目标检测实战(一):CIFAR10结合神经网络加载、训练、测试完整步骤
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
43 15
Vue加载网络组件(远程组件)
【10月更文挑战第23天】在 Vue 中实现加载网络组件(远程组件)可以通过多种方式来完成。
解决两个 Android 模拟器之间无法网络通信的问题
让同一个 PC 上运行的两个 Android 模拟器之间能相互通信,出(qiong)差(ren)的智慧。
38 3
Android|WebView 禁止长按,限制非白名单域名的跳转层级
如何限制 WebView 仅域名白名单网址能随意跳转,并禁用长按选择文字。
50 2
Android 中加载 Gif 动画
【10月更文挑战第20天】加载 Gif 动画是 Android 开发中的一项重要技能。通过使用第三方库或自定义实现,可以方便地在应用中展示生动的 Gif 动画。在实际应用中,需要根据具体情况进行合理选择和优化,以确保用户体验和性能的平衡。可以通过不断的实践和探索,进一步掌握在 Android 中加载 Gif 动画的技巧和方法,为开发高质量的 Android 应用提供支持。
探索安卓开发之旅:从新手到专家网络安全与信息安全:防范网络威胁,保护数据安全
【8月更文挑战第29天】在这篇技术性文章中,我们将踏上一段激动人心的旅程,探索安卓开发的世界。无论你是刚开始接触编程的新手,还是希望提升技能的资深开发者,这篇文章都将为你提供宝贵的知识和指导。我们将从基础概念入手,逐步深入到安卓开发的高级主题,包括UI设计、数据存储、网络通信等方面。通过阅读本文,你将获得一个全面的安卓开发知识体系,并学会如何将这些知识应用到实际项目中。让我们一起开启这段探索之旅吧!
【Azure 环境】移动应用 SSO 登录AAD, MSAL的配置为Webview模式时登录页面无法加载
【Azure 环境】移动应用 SSO 登录AAD, MSAL的配置为Webview模式时登录页面无法加载
【Azure API 管理】APIM集成内网虚拟网络后,启用自定义路由管理外出流量经过防火墙(Firewall),遇见APIs加载不出来问题
【Azure API 管理】APIM集成内网虚拟网络后,启用自定义路由管理外出流量经过防火墙(Firewall),遇见APIs加载不出来问题
Android项目架构设计问题之优化业务接口数据的加载效率如何解决
Android项目架构设计问题之优化业务接口数据的加载效率如何解决
58 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等