加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Android第三方库理会

发布时间:2019-07-31 23:12:47 所属栏目:业界 来源:Engineers
导读:媒介 许多生齿试之前,也许没有在互联网公司事变过可能说事变过但年初较短,不知道互联网公司技能口试城市问哪些题目? 再加上也许本身筹备也不充实,去口试没几个回合就被口试官几个题目打蒙了,最后以惨败收

图片函数库的选择必要按照APP的详细环境而定,对付严峻依靠图片缓存的APP,譬喻壁纸类,图片交际类APP来说,可以选择最专业的Fresco。对付一样平常的APP,选择Fresco会显得较量重,事实Fresco3.4M的体量摆在这。按照APP对图片的表现缓和存的需求从低到高,我们可以对以上函数库做一个排序。

Picasso < Android-Universal-Image-Loader < Glide < Fresco

先容:

Picasso :和Square的收集库一路能施展最大浸染,由于Picasso可以选择将收集哀求的缓存部门交给了okhttp实现。

Glide:仿照了Picasso的API,并且在他的基本上加了许多的扩展(好比gif等支持),Glide默认的Bitmap名目是RGB_565,比 Picasso默认的ARGB_8888名目标内存开销要小一半;Picasso缓存的是全尺寸的(只缓存一种),而Glide缓存的是跟ImageView尺寸沟通的(即5656和128128是两个缓存) 。

FB的图片加载框架Fresco:最大的上风在于5.0以下(最低2.3)的bitmap加载。在5.0以下体系,Fresco将图片放到一个出格的内存地区(Ashmem区)。虽然,在图片不表现的时辰,占用的内存会自动被开释。这会使得APP越发流通,镌汰因图片内存占用而激发的OOM。为什么说是5.0以下,由于在5.0往后体系默认就是存储在Ashmem区了。

总结:

Picasso所能实现的成果,Glide都能做,无非是所需的配置差异。可是Picasso体积比起Glide小太多假如项目中收集哀求自己用的就是okhttp可能retrofit(本质照旧okhttp),那么提议用Picasso,体积会小许多(Square百口桶的干活)。Glide的甜头是大型的图片流,好比gif、Video,假如你们是做美拍、爱拍这种视频类应用,提议行使。

Fresco在5.0以下的内存优化很是好,价钱就是体积也很是的大,按体积算Fresco>Glide>Picasso

不外在行使起来也有些未便(小提议:他只能用内置的一个ImageView来实现这些成果,用起来较量贫困,我们凡是是按照Fresco本身改改,直接行使他的Bitmap层)

3.各类json理会库行使

(1)Google的Gson

Gson是今朝成果最全的Json理会神器,Gson当初是为因应Google公司内部需求而由Google自行研发而来,但自从在2008年五月果真宣布第一版后已被很多公司或用户应用。Gson的应用首要为toJson与fromJson两个转换函数,无依靠,不必要破例特另外jar,可以或许直接跑在JDK上。而在行使这种工具转换之前需先建设好工具的范例以及其成员才气乐成的将JSON字符串乐成转换成相对应的工具。类内里只要有get和set要领,Gson完全可以将伟大范例的json到bean或bean到json的转换,是JSON理会的神器。Gson在成果上面无可挑剔,可是机能上面比FastJson有所差距。

(2)阿里巴巴的FastJson

Fastjson是一个Java说话编写的高机能的JSON处理赏罚器,由阿里巴巴公司开拓。

无依靠,不必要破例特另外jar,可以或许直接跑在JDK上。FastJson在伟大范例的Bean转换Json上会呈现一些题目,也许会呈现引用的范例,导致Json转换堕落,必要拟定引用。FastJson回收独创的算法,将parse的速率晋升到极致,高出全部json库。

综上Json技能的较量,在项目选型的时辰可以行使Google的Gson和阿里巴巴的FastJson两种并行行使,假如只是成果要求,没有机能要求,可以行使google的Gson,假若有机能上面的要求可以行使Gson将bean转换json确保数据的正确,行使FastJson将Json转换Bean

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读