Fresco的初步使用

来源:互联网 发布:java中的网络编程 编辑:程序博客网 时间:2024/05/18 03:20

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