一、背景
为什么要编译它的源码呢?编译源码有下面两点优势
1.可以把fresco放到自己的maven服务器上。
2.可以优化fresco的大小做裁剪
3.当集成React Native后apk体积增减,可以动态加载so,此时就需要重新编译fresco。
二、编译步骤
1、打开https://github.com/facebook/fresco/tags下载需要的版本,我这里就用1.12.1版本为例子。
2、下载zip文件,并且解压。
3、打开fresco-1.12.1工程,静静的等待这个工程建索引和下载资源:
image.png4、选择可用的Ndk(我使用的是android-ndk-r16-beta版本),因为fresco里面有c/c++代码,主要都是c++比较多。
5、编译通过后就可以直接运行了
a.showcase Moudle介绍fresco的功能和示例代码:
image.png
b.animation2介绍动画功能
image.png
c.comparison几个主流的图片加载框架性能对比示例
image.png
d.scrollperf 滑动效果的示例,这里就不贴图了。
e.zoomableapp 图片缩放的demo,这里也不上图了。
三、上传maven
通过上面的步骤其实fresco已经可以在本地运行了,之后要处理的就是把它上传到自己的maven仓库。一般上传mava其实就是上传release版本的,所以需要修改下面文件:
image.png
主要是修改maven参考地址、账号、密码,另外pom文件可以看自己的需要,不要也可以。
image.png
最后点击studio右边的执行脚本即可:
image.png
四、拓展
如果想集成RN,但是还需要修要优化apk大小,可以动态加fresco的so。这时候需要把freso里面使用SoLoader加载so的逻辑都去掉即可。
网友评论