首页 > 其他 > 详细

ImageLoader配置(注释)

时间:2015-07-20 23:40:15      阅读:379      评论:0      收藏:0      [点我收藏+]

/**
     * 配置ImageLoader
     */
    private void configImageLoader() {

        File discCacheDir = StorageUtils.getOwnCacheDirectory(getApplicationContext(), "/iWorker/Cache/images");
        int memClass = ((android.app.ActivityManager) getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass();
        memClass = memClass > 32 ? 32 : memClass;
        // 使用可用内存的1/8作为图片缓存
        Logger.d( " memory memClass size:{%s}", memClass);
        final int cacheSize = 1024 * 1024 * memClass / 4;
        Logger.d( " memory cache size:{%s}", cacheSize);
        ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())
                .memoryCacheExtraOptions(240, 240).taskExecutor(Executors.newFixedThreadPool(10))
                        // 开启十个线程下载图片,默认是3个
                        // 设置缓存的每个文件的最大宽高,默认是屏幕宽高
                        // .diskCacheExtraOptions(1280, 1280, null)
                        // 存放到SD卡上的最大宽高
                        // .diskCacheExtraOptions(240, 240, null)
                        // .threadPoolSize(3)
                        // 设置线程池大小,默认为3
                        // .denyCacheImageMultipleSizesInMemory()
                        // 禁止缓存多份不同大小的图片
                        // .threadPriority(Thread.NORM_PRIORITY - 1)
                        // 线程优先级,默认
                        // .tasksProcessingOrder(QueueProcessingType.FIFO)
                        // .taskExecutor(executor)
                .memoryCache(new LruMemoryCache(cacheSize))
                        // 缓存策略
                        // 默认已设为1/8
                        // .memoryCacheSize(cacheSize)
                        // .memoryCacheSizePercentage(13)//设置最大内存缓存大小
                .diskCache(new UnlimitedDiscCache(discCacheDir))
                        // 硬盘缓存策略:这个缓存类没有任何的限制
                        // Sets disk cache for
                        // images.默认为Android/data/[app_package_name]/cache
                        // .diskCacheSize(50 * 1024 * 1024)//50M
                        // .diskCacheFileCount(500)//Sets maximum file count in disk
                        // cache directory.设置最大文件数
                        // .diskCacheFileNameGenerator(new
                        // HashCodeFileNameGenerator())//将保存的时候的URI名称用HASHCODE加密
                        // .imageDownloader(new IworkerImageDownloader(this))
                        // .defaultDisplayImageOptions(DisplayImageOptions.createSimple())
                         .writeDebugLogs()// 输出Debug信息,释放版本的时候,不需要这句
                .build();
        ImageLoader.getInstance().init(config);
    }
一般在自定义的Application中进行配置。



版权声明:本文为博主原创文章,未经博主允许不得转载。

ImageLoader配置(注释)

原文:http://blog.csdn.net/telenewbie/article/details/46973189

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!