2016-06-17 1 views
0

Я использую плагин picasso для загрузки изображения.Сохранить изображение на SD-карте после загрузки picasso

Picasso.with(context).load(BackendConfig.media_url+folder+holder.media_name).resize(150, 150).into(holder.imageView); 

Работает нормально. Но я хочу сохранить это изображение на SD-карте, загрузив только один раз с URL.

Как я могу это сделать?

ответ

1

Picasso с использованием кеша LRU, не нужно беспокоиться о загрузке его из URL-адреса один раз. Если вам нужно загрузить и сохранить фактическое изображение в качестве файла, загрузите его в качестве растрового ресурса и используйте Bitmap.compress и FileOutputStream для сохранения в файл (PNG/JPEG/WEBP).

1

вы можете использовать этот легкий андроид библиотеку VINCI (wrot это для моей самости) его делать все, что вы хотите

  • кэширования - с помощью LruCache
  • управление files/bitmaps (Сохранение файлов в internalStorage)

прочитайте это WIKI part, чтобы узнать больше о моем github repo.

Storage store = Vinci.base(context).process().load(uri).file(); 

Log.e("Created", Boolean.toString(store.isCreated())); 
Log.e("FileObject", store.FileObject().toString()); 
Log.e("FullPath", store.getfullPath().getPath()); 
Log.e("LocalPath", store.LocalPath()); 
Log.e("Get Bitmap File", String.valueOf(store.getBitmap()));