마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

UIL라이브러리 옵션 설정(메모리,캐쉬 사이즈) 질문

0 추천

안녕하세요. UIL을 사용해서 로컬 이미지를 앱에 뿌려주고 있는데요...

너무 적은 양의 사진만 캐쉬?에 저장이 되는 것 같습니다.

그래서 스크롤을 조금만 내렸다 올리면 이미 로딩된 사진들도 다시 로딩을 하네요..

메모리, 디스크 캐쉬 사이즈 뭐 이런 config를 바꿔주면 될 것도 같은데

막상 이거저거 변경해봐도 잘 안되네요..

우선, 아래 코드에서

메모리캐쉬, 디스크캐쉬가 정확히 무엇을 의미하는지..

더 많은 사진을 캐쉬에 저장하려면 어떤 옵션을 건드려야하는지 아시는분 계신가요?

 

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)
                .threadPriority(Thread.NORM_PRIORITY - 2)
                .memoryCache(new LruMemoryCache(memoryCacheSize))
                .denyCacheImageMultipleSizesInMemory()
                .diskCacheFileNameGenerator(new Md5FileNameGenerator())
                .tasksProcessingOrder(QueueProcessingType.LIFO)
                .build();

 

 

치솟음 (3,710 포인트) 님이 2016년 1월 15일 질문

1개의 답변

0 추천
 
채택된 답변
제가 사용하고 있는 설정입니다.

 

public static final int MEMORY_CACHE_LIMIT_VENUE = 1024 * 1024 * 12;

    public static final int DISK_CACHE_LIMIT_VENUE = 1024 * 1024 * 128;

 

public static void initImageLoader(Context context)

    {

        // Create global configuration and initialize ImageLoader with this config

        LRULimitedMemoryCache memoryCache = new LRULimitedMemoryCache(MEMORY_CACHE_LIMIT_VENUE);

        ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)

                .threadPoolSize(2)

                .threadPriority(Thread.NORM_PRIORITY - 2)

                .denyCacheImageMultipleSizesInMemory()

                .diskCacheFileNameGenerator(new Md5FileNameGenerator())

                .diskCacheSize(DISK_CACHE_LIMIT_VENUE)

                .tasksProcessingOrder(QueueProcessingType.LIFO)

                .writeDebugLogs()

                .memoryCache(memoryCache)

                .build();

        ImageLoader.getInstance().init(config);

    }
캬옹이 (37,920 포인트) 님이 2016년 1월 15일 답변
치솟음님이 2016년 1월 18일 채택됨
...