在项目中经常会使用到WebView控件,当加载html页面时,会在/data/data/应用package目录下生成database与cache两个文件夹如下图如示:
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;
}
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。