2013-12-17 23 views
5

Tôi đang sử dụng Picasso để tải hình ảnh từ một URLPicasso đĩa bộ nhớ đệm

Picasso.with(getApplicationContext()).load(product.getImageUrl()).into(imageView); 

Từ những gì tôi có thể thấy điều này đang xảy ra với mọi url và không bộ nhớ đệm vào đĩa. Tôi cần đĩa bộ nhớ đệm kích hoạt

tôi có quyền

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

Vì vậy, nó không phải là một vấn đề với đĩa. Tôi nghĩ rằng vấn đề là máy chủ không gửi lại một param bộ nhớ cache để HTTP Client không phải là bộ nhớ đệm.

Làm thế nào tôi có thể buộc Picasso sử dụng bộ nhớ cache đĩa mọi lúc?

Trả lời

3

Picasso không có bộ nhớ cache trên đĩa. Thư viện dựa trên các máy khách HTTP để tôn vinh ngữ nghĩa của các tiêu đề bộ nhớ đệm được xác định rất tốt để giữ cho mọi thứ cục bộ trên đĩa.

Do thực tế này, không có cách nào để buộc bộ nhớ đệm.

+0

Điều này có nghĩa là Picasso luôn cần kết nối ngay cả khi sử dụng hình ảnh được lưu trong bộ nhớ cache? – tomasbarrios

+0

No. Máy khách HTTP sẽ phân phát từ bộ nhớ cache nếu ngoại tuyến. –

+1

Tôi đã thử nghiệm với "chế độ trên máy bay" được kích hoạt, nó không hoạt động đối với tôi. Có nên làm việc không? – tomasbarrios

Các vấn đề liên quan