自己编译运行Fresco

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yutao52shi/article/details/48014581

介绍

Fresco(https://github.com/facebook/fresco) 是Facebook出的一个高性能的ImageLoader。内存占用方面表现得十分优秀。但是由于一些特殊要求,需要修改一些源代码,满足我们自己系统的要求。比如如果自己公司的图片服务器加入了防盗链的机制,需要再HTTP头里面加入referer这个header。

准备工作

1、安装Android Studio(https://developer.android.com/sdk/index.html)
2、安装NDK(https://developer.android.com/ndk/downloads/index.html)。解压后别忘了设置环境变量,否则编译会找不到NDK命令。
3、下载源码(git clone [email protected]:facebook/fresco.git)

导入工程

在Android Studio里面import,运行项目(也可以直接在命令行下运行gradlew assemble[Debug|release])。暂时不要使用gradlew build,因为有几个Unit Test貌似还无法通过(也不知道为什么一直meiyou)。

获取生成物

编译完成后,在项目目录下搜索aar(Android Archive Library)后缀的文件,就可以找到编译好的库了。
这里写图片描述
剩下的事情就是把这些AAR导入到自己的Gradle工程里面了。
导入的方法以及Demo代码可以参考我的另外一篇博客:
http://blog.csdn.net/yutao52shi/article/details/48015125
示例项目:http://download.csdn.net/detail/yutao52shi/9052009

注意事项

Fresco依赖几个第三方库,使用这种方法引入Fresco务必在Gradle加入如下代码,否则会运行的时候出现ClassNotFoundException。其中${XXX_VERSION}是定义在gradle.properties里面的版本号,具体可以参考Fresco的gradle文件

compile "com.parse.bolts:bolts-android:${BOLTS_ANDROID_VERSION}"
compile "com.nineoldandroids:library:${NINEOLDANDROID_VERSION}"
compile "com.android.support:support-v4:${SUPPORT_V4_VERSION}"

猜你喜欢

转载自blog.csdn.net/yutao52shi/article/details/48014581