关闭

Fresco的初步使用

标签: 开源框架图片缓存内存
187人阅读 评论(0) 收藏 举报
分类:

title: Fresco的初步使用
date: 2016-03-15 17:06:32

tags: 开源框架的使用

Fresco 清理图片缓存 :

            ImagePipeline imagePipeline = Fresco.getImagePipeline();
               //清空内存缓存(包括Bitmap缓存和未解码图片的缓存)
               imagePipeline.clearMemoryCaches();
                //清空硬盘缓存,一般在设置界面供用户手动清理
                  imagePipeline.clearDiskCaches();
                 //同时清理内存缓存和硬盘缓存
                  imagePipeline.clearCaches();
                  //清理特定某张图片缓存
                 imagePipeline.evictFromCache(uri)

Fresco遇到的问题

1、Fresco使用的时候会产生’x86’, ‘x86_64’, ‘armeabi-v7a’, ‘armeabi’文件,里面都是兼容各个系统的兼容.so文件。如果有些不需要可以在gradle中使用


 //删掉不必要的so文件
    splits {
        abi {
            enable true
            reset()
            include 'armeabi'
            universalApk false
        }
    }

来保留特定的文件夹,删除其他的。

Android Studio, gradle and NDK integration

当你项目中有so文件的时候,如果没有针对64位的手机做适配那么该so文件是不会被调用到,因为Fresco中会生成一个arm64-v8a这种64位的目录,那么系统就会只去找寻这个目录下的so,这样就会报错


java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.pba.cosmetics-2base.apk"],nativeLibraryDirectories=[/data/app/com.pba.cosmetics-2/lib/arm64, /vendor/lib64, /system/lib64]]] co

2、Fresco的SimpleDraweeView 可能再有写控件中不兼容,如ViewFlipper 中的进出动画。这样的话可以给SimpleDraweeView 添加个父控件可以解决这个问题。

3、Fresco是放在mavenCentral()中的,所以在使用的时候需要添加


allprojects {
    repositories {
        jcenter()
        mavenCentral()
    }
}

Fresco使用链接

Android Image Loader 第三方库对比测试

Fresco中文使用文档

详细图解Fresco的使用

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2029次
    • 积分:113
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章存档