在项目中经常会使用到WebView控件,当加载html页面时,会在/data/data/应用package目录下生成database与cache两个文件夹如下图如示:

  1. private SQLiteDatabase database;
    /**
     * 初始化缓存数据库webviewCache
     * 清空cache表中的数据
     */
    private void InitDatabase(){
    database = SQLiteDatabase.openDatabase(  
    getDatabasePath("webviewCache.db").getAbsolutePath(), null,  
    SQLiteDatabase.OPEN_READWRITE);  
    String sql = "delete from cache";
    database.rawQuery(sql, new String[]{});
    }

       

 /**
 * 从cache表中获取第一个图片路径
 * 由于刚进入界面就清空了cache表
 * 所以正常情况下,表中只存在一张缓存图片
 * @return
 */
public String getBarName(){
String result = null;//
Cursor cursor = database.rawQuery("select * from cache",  
new String[] {});
if(cursor.moveToNext()){
result =  cursor.getString(cursor.getColumnIndex("filepath"));
}
cursor.close();
database.close();
return result;
}



/**
 * 从缓存获取图片
 * 
 * @return
 */
private Bitmap getPictureFromCache(String str){
Bitmap bitmap=null;
try {
File file=new File(getCacheDir()+"/webviewCache/" + str);
FileInputStream inStream=new FileInputStream(file);
bitmap=BitmapFactory.decodeStream(inStream);
} catch (Exception e) {
e.printStackTrace();
}
return bitmap;
}