23

picasso ライブラリを使用して、アプリの画像を読み込みます。しかし、ピカソ ライブラリを使用して独自のディスク (sdcard) キャッシュを実装する方法がわかりません。

4

2 に答える 2

36

Picasso は、ディスク キャッシングに HTTP クライアントを使用します。すでに構成されている場合は、独自のインストールの代わりにそれを使用します。

組み込みの UrlConnection の場合、キャッシュをインストールするためのドキュメントは次のとおりです: https://developer.android.com/reference/android/net/http/HttpResponseCache.html

OkHttp を使用している場合は、setCache を呼び出すだけです: http://square.github.io/okhttp/2.x/okhttp/com/squareup/okhttp/OkHttpClient.html#setCache-com.squareup.okhttp.Cache-

于 2013-09-23T16:44:35.190 に答える
5

@Dax、OkHttpを使用してカスタムキャッシュディレクトリにファイルを保存するには、次のようにコーディングします-

OkHttpClient okHttpClient = new OkHttpClient();
File customCacheDirectory = new File(Environment.getExternalStorageDirectory().getAbsoluteFile() + "/MyCache");
okHttpClient.setCache(new Cache(customCacheDirectory, Integer.MAX_VALUE));
OkHttpDownloader okHttpDownloader = new OkHttpDownloader(okHttpClient);
Picasso picasso = new Picasso.Builder(mainActivity).downloader(okHttpDownloader).build();
picasso.load(imageURL).into(viewHolder.image);

お役に立てれば。

于 2015-10-22T08:01:29.220 に答える