有关webview的一些常见操作

webView.getSettings().setJavaScriptEnabled(true);//设置是否支持js

webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);//不做缓存处理


    缓存五种模式:

        LOAD_CACHE_ONLY:  不使用网络,只读取本地缓存数据

        LOAD_DEFAULT:  根据cache-control决定是否从网络上取数据。

        LOAD_CACHE_NORMAL: API level 17中已经废弃, 从API level 11开始作用同LOAD_DEFAULT模式

        LOAD_NO_CACHE: 不使用缓存,只从网络获取数据.

        LOAD_CACHE_ELSE_NETWORK,只要本地有,无论是否过期,或者no-cache,都使用缓存中的数据。


webView.getSettings().setDefaultTextEncodingName("UTF-8");//设置编码

webView.getSettings().setLoadsImagesAutomatically(true);//支持网页图片加载

webView.getSettings().setDomStorageEnabled(true);// 开启 DOM storage API 功能

webView.getSettings().setDatabaseEnabled(true);// 开启 database storage API 功能

webView.getSettings().setDatabasePath(cacheDirPath);// 设置数据库缓存路径

webView.getSettings().setAppCachePath(cacheDirPath);// 设置 Application Caches 缓存目录

webView.getSettings().setAppCacheEnabled(true);// 开启 Application Caches 功能

删除缓存

private void clearCache(String cacheDirPath) {

deleteDatabase("webview.db");

deleteDatabase("webviewCache.db");

CookieSyncManager.createInstance(this);

CookieManager.getInstance().removeAllCookie();

File file = new File(cacheDirPath);

File chromiumFile = new File(StorageUtils.getCachePath(this) + "webviewCacheChromium");

if (file.exists()) {

deleteFile(file);

}

if (chromiumFile.exists()) {

deleteFile(chromiumFile);

}

}

/** 删除缓存 */

private void deleteFile(File file) {

// TODO Auto-generated method stub

if (file != null && file.isDirectory()) {

for (File item : file.listFiles()) {

item.delete();

}

file.delete();

}

}

Jsoup.jar 用来解析Html页面;

步骤:

1、获取到要加载的网络的html元素;

可用:

publicString getHtmlString(String urlString) {

try{

URL url =newURL(urlString);

URLConnection ucon = url.openConnection();

InputStream instr = ucon.getInputStream();

BufferedInputStream bis =newBufferedInputStream(instr);

ByteArrayBuffer baf =newByteArrayBuffer(500);

intcurrent =0;

while((current = bis.read()) != -1) {

baf.append((byte) current);

}

returnEncodingUtils.getString(baf.toByteArray(),"gbk");

}catch(Exception e) {

return"";

}

}

也可以:

Document doc = Jsoup.parse(newURL("http://www.cnbeta.com"),5000);

2、用Jsoup 解析这个html元素,返回一个Document对象;

Document document = Jsoup.parse(htmlString);

3、获取每个节点的标签;

String title = document.head().getElementsByTag("title").text();

你可能感兴趣的:(有关webview的一些常见操作)