Я использую метод Acery getCachedImage для кэширования URL-адреса изображения с моего сервера, но перед вами стоит какая-то проблема. Если я запускаю его дважды в одной и той же функции, и первый кеш будет успешным, а второй вернет значение null. Когда я закрываю эту страницу и запустить снова, и оба успешно, я хочу, чтобы убедиться, что каждый раз, когда я бегу, как от него может кэшировать изображение, ниже мой кодAquery - getCachedImage return null
boolean memCache = false;
boolean fileCache = true;
Bitmap dealimage = null;
Bitmap dealimage2 = null;
String dealImg = null;
String dealImg2 = null;
try {
JSONArray jsonarray = new JSONArray(imgStr);
for (int i = 0; i < jsonarray.length(); i++) {
JSONObject jobj = jsonarray.getJSONObject(i);
dealImg = jobj.getString("IMG1").toString();
dealimage = aq.getCachedImage(dealImg);
System.out.println("Image : " + dealimage);
dealImg2 = jobj.getString("IMG12").toString();
dealimage2 = aq.getCachedImage(dealImg2);
System.out.println(" Second Image : " + dealimage2);
}
} catch (Exception e) {
System.out.println("Error: " + e.getMessage());
}
Результат LogCat
(первый раз) изображение: [email protected] Small Image: пустой
(второй раз) изображение: [email protected] Small Image: [email protected]
Я хочу, чтобы оба результата могли кэшировать в первый раз, а не во второй раз. Почему первый раз второе изображение не может быть кешем? Но во второй раз оба могут кэшировать его? Может ли кто-нибудь помочь?
Спасибо за ваш быстрый ответ, у меня есть включать как логические (Memcache = false; булева файловый кэша = истину;) при попрошайке функции, но в первый раз запустите ее, второе изображение вернет нуль, а во второй раз запустим его, и он сможет кэшировать URL-адрес. – Arzozeus
@ Arzozeus, может быть, когда вы идете в первый раз, второе изображение не будет загружено в область кеша из-за медленного соединения или большего изображения. –
Эти изображения всего лишь несколько килобайт, я думаю, что проблема с размером изображения или медленным подключением. Просто не знаю, почему во второй раз оба могут получить кеш, и первый раз второе изображение возвращается null – Arzozeus