首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android镜像缓存

Android镜像缓存
EN

Stack Overflow用户
提问于 2009-12-22 17:32:12
回答 12查看 112.8K关注 0票数 143

图片从web下载后如何缓存?

EN

回答 12

Stack Overflow用户

发布于 2010-10-09 04:08:05

现在的笑点是:使用系统缓存。

代码语言:javascript
复制
URL url = new URL(strUrl);
URLConnection connection = url.openConnection();
connection.setUseCaches(true);
Object response = connection.getContent();
if (response instanceof Bitmap) {
  Bitmap bitmap = (Bitmap)response;
} 

提供内存和闪存rom缓存,与浏览器共享。

grr。我希望在我写自己的缓存管理器之前有人告诉我。

票数 178
EN

Stack Overflow用户

发布于 2010-11-21 09:27:24

关于上面优雅的connection.setUseCaches解决方案:可悲的是,如果没有一些额外的努力,它将无法工作。您将需要使用ResponseCache.setDefault安装ResponseCache。否则,HttpURLConnection将静默忽略setUseCaches(true)位。

有关详细信息,请参阅FileResponseCache.java顶部的注释:

http://libs-for-android.googlecode.com/svn/reference/com/google/android/filecache/FileResponseCache.html

(我会在评论中发表这篇文章,但我显然没有足够的SO karma。)

票数 65
EN

Stack Overflow用户

发布于 2009-12-22 21:13:12

要下载图像并保存到存储卡,您可以这样做。

代码语言:javascript
复制
//First create a new URL object 
URL url = new URL("http://www.google.co.uk/logos/holiday09_2.gif")

//Next create a file, the example below will save to the SDCARD using JPEG format
File file = new File("/sdcard/example.jpg");

//Next create a Bitmap object and download the image to bitmap
Bitmap bitmap = BitmapFactory.decodeStream(url.openStream());

//Finally compress the bitmap, saving to the file previously created
bitmap.compress(CompressFormat.JPEG, 100, new FileOutputStream(file));

不要忘记将Internet权限添加到您的清单中:

代码语言:javascript
复制
<uses-permission android:name="android.permission.INTERNET" />
票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1945201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档