WebView相关知识
来源:互联网 发布:网狐6603数据库文档 编辑:程序博客网 时间:2024/05/16 12:12
为什么用WebView:
1.兼容已有的项目
2.可以动态更新
WebView webView;//通过findViewById找到webView.loadUrl("网址");
但是loadUrl默认会通过手机浏览器打开,所以应该做下列修改:
webView.setWebChromeClient(new WebChromeClient(){ @Override public void onReceivedTitle(WebView view, String title) { titleView.setText(title);//textview显示title super.onReceivedTitle(view, title); } }); webView.setWebViewClient(new WebViewClient(){ //重写urlLoading,这时设置在webView中显示 @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { webView.loadUrl(url); return super.shouldOverrideUrlLoading(view, url); } });
自定义webView的title:
界面刷新:webView.reload();
webView下载文件(2种方式):
1.自定义下载
webView.setDownloadListener(new DownloadListener() { @Override public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) { //自定义HttpThread类,继承自Thread,然后在那里面实现下载逻辑 new HttpThread().start(); } });
2.通过系统方式执行一个下载命令:
Uri uri = Uri.parse(url); Intent intent = new Intent(Intent.ACTION_VIEW,uri); startActivity(intent);
webView错误码处理:
1.本地自己定义组件
2.加载本地写好的html文件:重写WebViewClient中的onReceivedError方法,加载本地html文件:
webView.loadUrl("file:///android_asset/error.html");
webView同步Cookie问题:
参考http://blog.csdn.net/xiaozhiwz/article/details/46459555
webView与JS调用混淆问题:代码进行混淆后,不能响应相应的方法,那么解决办法是对相应的类或方法不进行混淆。
webView导致的远程注入问题:
解决办法:减少JS的调用,把所有JS与webView的调用都通过自定义协议的方式去解决。
0 0
- WebView相关知识
- webview相关的知识
- WebView相关知识
- android webView相关知识
- webview相关知识
- WebView相关知识整理
- Android WebView相关知识(全)
- webview知识
- 工作中用到了webview 下面把webview相关的知识进行一下总结:
- WebView相关
- WebView相关
- webView 相关
- webview相关
- webview相关
- WebView相关
- WebView相关
- WebView相关
- webview相关
- 数据库安全--授权GRANT和回收REVOKE
- 文本限制输入
- c++第五次上机
- Lock与synchronized的区别
- QQ分享官方第三方接入(分享纯图片及截取view的bitmap图)
- WebView相关知识
- Android中的SurfaceView学习
- 设计模式之代理模式
- NYOJ 874 签到
- 解决新手机连接到centos系统电脑adb devices不显示设备问题
- C++Primer Plus第6版 4.13编程练习答案
- C++第5次实验
- iOS 十六进制颜色UIColor+Hex
- linux编程获取本机IP地址的三种方法