早先因这篇介绍Fresco文章:得知Fresco,现五一有时间就下来运行看看,顺便做个记录。该文章结尾相关地址提示:Fresco官网+FrescoGitHub托管
大家做图片异步加载,很多都是用到com.nostra13.universalimageloader:universal-image-loader这个jar包处理,效果不错,可内存释放问题还是不够好。一看到Facebook推出这个Fresco,很是兴奋,希望如文章说的那么强大。现在先体验下Fresco源码下提供的smaple的运行效果吧:
从示例中可看到Facebook帮,为了展示自己Fresco的强大,工程都加入了目前流行的图片库,直接进行对比,常用的universal-image-loader也在当中,看来Facebook帮对自家的Fresco图片库,还是相当自信的!
下面具体说说Fresco下载编译,及sample运行:
1、Fresco下载编译(基于Win7实践)
1.1、Fresco下载源码:
git clone https://github.com/facebook/fresco.git
1.2、FrescoNDK编译:
上面下载下来的源码,是Android Studio工程,还需要进行DNK编译,才能将源码下smaple官方样例直接载入成功运行。所以下面说说具体编译:
需要做好以下配置:
1.2.1、下载Android SDK(若已有,只需配置好即可),然后配置好环境变量(下面采用编译过程提示的一种配置方法:增加ANDROID_HOME环境变量,指明SDK路径)配置如下图(刚配置可能需要重启才生效):
1.2.2、下载安装NDK(需要android-ndk-r10d版本)。
然后进行以下配置:在Fresco源码根目录下,打开gradle.properties文件,在最后添加上NDK路径(下面是本人NDK路径示例):
ndk.path=D\:\\android-ndk-r10d\\android-ndk-r10d
如下图:
1.2.3、Win7上编译是打开CMD,到Fresco源码根目录,运行以下命令进行NDK编译(编译过程会下载相关jar包等,所以需要翻墙,方便访问外网下载,你懂的):
gradlew.bat build
1.2.4、编译成功提示:
1.2.5、编译过程遇到的错误情况(下面这个情况是没配置好SDK路径):
编译过程遇到什么错误都是有提示的,自己根据提示应该都Google解决的。最后得到编译成功提示。恭喜了!您可以马上载入Android Studio 体验官方提供的示例。
2、AndroidStudio运行smaple
若是编译成功了,AndroidStudio运行smaple就非常简单了,因为Fresco本身就是一个AS工程,直接通过AndroidStudio,选择打开一个已有工程,到Fresco源码根目录下,选择Fresco工程的build.gradle,点击进行加载运行(如下图所示):
3、Eclipse运行smaple
现在国外大牛都转到Android Studio开发,GitHub上新的开源工程都是AS工程。Fresco就是一例。所以还是建议大家用上Android Studio,现在新版本还是不错的。
由于Fresco官方提供的源码示例都是AS工程,所以要想载入Eclipse运行,还是要搞一下的:
3.1、从上面说到官方基于Eclipse开发说明中,下载Fresco需要用到的库:可以直接这里下载,然后按照官方说明加入Eclipse,供以后开发需要。
3.2、下面会直接提供本人整理出来FrescoSmaple的Eclipse工程版本。大家可以下载加入Eclipse运行,如果工程加入报错,可能是需要上面提到的库进行支持,所以具体情况自己看看解决。下面给出本人Eclipse中FrescoSmaple工程结构图(可以根据源码对比):
上面提供的工程中,没有用到fresco库,关于Smaple需要用源码下面drawee-backends中的drawee-pipeline及drawee-volley;本人直接从源码中取出其Java文件,加入到Sample中直接使用,然后通过补上相关的jar包及上面提到的官方提供的工程库,便能成功运行起Smaple。
3.3、运行Sample后,点击查看Picasso一项,若是报出如下错误,是因为工程中缺少okio jar包,这个事okhttp下面报错中需要依赖的包。
最后,由于Fresco整个编译后的源码打包过大,CSDN没能上传,我就不上传了,需要的再说吧。
Fresco官方提供的供于Eclipse开发的库:CSDN下载地址
本人整理出来Fresco源码中官方示例smaple的Eclipse工程版本:CSDN下载地址