Aquery 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());
}
결과 로그 캣
(처음, 그것은 모두 이미지를 캐시 할 수 있습니다, 나는 실행해야합니다 모든 시간을 만들고 싶어) 이미지 : [email protected] 작은 이미지 : 널 (null)
(두 번째) 이미지 : [email protected] 작은 이미지 : [email protected]
두 결과가 두 번째 시간 대신 처음으로 캐시 될 수 있기를 바랍니다. 두 번째 이미지를 처음으로 캐시 할 수없는 이유는 무엇입니까? 그러나 두 번째로 캐시 할 수 있습니까? 누구든지 도와 줄 수 있습니까? URL에서 얻을 이미지 캐시 옵션을 허용 할 때
감사합니다, 나는에서 Memcache = false를 모두 부울 (포함 가지고, 부울 fileCache을 = TRUE;) 함수의 구걸에 있지만 처음 그것을 실행하면 두 번째 이미지는 null을 반환하고 두 번째 나는 그것을 실행하고 그것은 URL을 캐시 할 수 있습니다. – Arzozeus
@ Arzozeus, 처음 연결했을 때 느린 연결 또는 더 큰 이미지로 인해 두 번째 이미지가 캐시 영역으로 다운로드되지 않습니다. –
그 이미지는 단지 몇 KB 크기로, 이미지 크기 나 느린 연결 문제는 아닌 것 같아요. 그냥 두 번째 시간이 둘 다 캐시를 얻을 수있는 이유를 모르겠어요, 그리고 두 번째 이미지 반환 null – Arzozeus