首页 > Web开发 > 详细

WebView图片缓存

时间:2015-07-28 14:46:09      阅读:343      评论:0      收藏:0      [点我收藏+]


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

  1. private SQLiteDatabase database;

  2. /**

  3. * 初始化缓存数据库webviewCache

  4. * 清空cache表中的数据

  5. */

  6. private void InitDatabase(){


  7. database = SQLiteDatabase.openDatabase(  

  8. getDatabasePath("webviewCache.db").getAbsolutePath(), null,  

  9. SQLiteDatabase.OPEN_READWRITE);  


  10. String sql = "delete from cache";

  11. database.rawQuery(sql, new String[]{});

  12. }

        /**

* 从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;

}


本文出自 “爬过山见过海” 博客,请务必保留此出处http://670176656.blog.51cto.com/4500575/1679070

WebView图片缓存

原文:http://670176656.blog.51cto.com/4500575/1679070

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!