WebView爬坑

来源:互联网 发布:物业投标书网络范围 编辑:程序博客网 时间:2024/06/03 13:29

1.重定向:需要对webview内的链接进行点击操作

webView.setWebViewClient(new WebViewClient() {//对webview页面加载管理、如url重定向            @Override            public void onLoadResource(WebView view, String url) {                super.onLoadResource(view, url);            }            @Override            public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {                super.onReceivedError(view, errorCode, description, failingUrl);            }            @Override            public void onPageStarted(WebView view, String url, Bitmap favicon) {                super.onPageStarted(view, url, favicon);            }            /**             * url重定向会执行此方法以及点击页面某些链接也会执行此方法             *             * @param view             *            当前webview             * @param url             *            即将重定向的url             * @return true:表示当前url已经加载完成,即使url还会重定向都不会再进行加载 false 表示此url默认由系统处理,该重定向还是重定向,直到加载完成             */            @Override            public boolean shouldOverrideUrlLoading(WebView view, String url) {//所需要进行的操作,我的操作是跳转到下一页                Intent intent = new Intent();                intent.setClass(PlayDetailActivity.this,UrlDetailActivity.class);                startActivity(intent);                return true;            }            //该方法传回了错误码,根据错误类型可以进行不同的错误分类处理            //http://blog.csdn.net/carson_ho/article/details/52693322            @Override            public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {//                super.onReceivedError(view, request, error);            }        });

2.webview内加载视频

WebSettings webSettings = webView.getSettings();// 开启支持视频webSettings.setPluginState(WebSettings.PluginState.ON);webSettings.setGeolocationEnabled(true);webSettings.setJavaScriptEnabled(true);webSettings.setUseWideViewPort(true); // 关键点webSettings.setAllowFileAccess(true); // 允许访问文件webSettings.setSupportZoom(true); // 支持缩放if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {//5.0 以上的手机要加这个    webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);}webView.setLayerType(View.LAYER_TYPE_HARDWARE, null);//开启硬件加速,不然会出现有声音,没视频的现象

3.退出页面视频停止播放

@Overrideprotected void onPause () {    webView.reload ();    super.onPause ();}
原创粉丝点击