У меня есть довольно большой список URL-адресов изображений, которые я использую для загрузки ViewPager
с помощью Picasso. Мне нужно предоставить возможности совместного использования этих изображений с помощью намерения (в конечном счете, с помощью ShareActionProvider). Из того, что я читал, Пикассо на самом деле не построен, чтобы обрабатывать подобные вещи из коробки, хотя он предоставляет все необходимые инструменты для этого.
Мой план перед исследованием заключался в создании простого LruCache
, который использует URL-адрес в качестве значения ключа и растрового изображения. Это кэширование произойдет в onBitmapLoaded
через интерфейс Picasso Target
. Всякий раз, когда я хочу поделиться изображением, я проверю кеш для растрового изображения. Если этого не произойдет, я приеду с Пикассо. Теперь, когда у меня есть кэшированное растровое изображение, независимо от того, я напишу в файл (... эта часть кажется неправильной, хотя мне нужно написать файл, чтобы получить uri, не так ли?) И добавить файл uri в намерение.
Однако я вижу, что с Picasso.Builder
я могу установить (и сохранить ссылку) свой собственный кеш - qaru.site/info/358139/.... Это означает, что я могу покончить с обычным Target
и путаницей с правильной реализацией методов hashCode
и equals
для обеспечения точной утилизации, поиска и т.д.
Мой вопрос в том, как Пикассо использует этот кеш? Какие ключи? Есть ли способ получить растровое изображение Uri, не записывая его на диск?