首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

推荐3个有用的开源项目

又到了日常推荐的时候了,本来准备每周搞一个推荐,但是这个推荐具有太多的不确定性,有的是我恰好发现,有的是我想做这么个东西,搜索后发现已经存在的项目。

我个人特别倾向于资源聚合的项目,其实 wanandroid 也是这样风格的一个网站,目前能做的就是不会为了推荐而推荐,尽可能保证每次的推荐都对大多数人有一定的帮助。

1

提升布局加载速度:X2C

这是掌阅ireader 对外开源的一个库,可以自动化的提升加载布局的效率。

原理我简单说一下大家肯定都懂,我们在编写布局文件的时候,绝大多数情况下都是写xml 文件,然后通过setContentView或者 inflate 加载,大多数同学可能也知道,对于 xml 文件在 LayoutInflater 中需要解析,并且在首次加载的部分控件还需要通过反射去生成对象。

所以如果说,我们放弃使用xml,通过动态编码的方式去生成布局的方式,那么一定会有一定的性能提升。

但是,这几乎是不可能的,因为不易维护,不支持实时预览,编写起来过于复杂,看起来痛不欲生。

所以出现了 X2C 这个项目:

为了即保留xml的优点,又解决它带来的性能问题,我们开发了X2C方案。

即在编译生成APK期间,将需要翻译的layout翻译生成对应的java文件,这样对于开发人员来说写布局还是写原来的xml,但对于程序来说,运行时加载的是对应的java文件。

 我们采用APT(Annotation Processor Tool)+ JavaPoet技术来完成编译期间【注解】->【解注解】->【翻译xml】->【生成java】整个流程的操作。

https://github.com/iReaderAndroid/X2C

2

adb 用法大全

这个发现的就有点意思了,因为我最近在给 wanandroid 加一个栏目,叫“速查”,其实归档一下开发中,经常需要查询的东西:

因为只有我一个人去补充内容,比如我经常查询如何通过adb 查看 top activity,我就准备补充这样的一个文档,在搜索过程中发现了这个库。

https://github.com/mzlogin/awesome-adb

详细程度实属惊人,部分目录如下:

此外,其实总是查文档也不是什么好办法,更好的方式可以去开发一个adb 的提示插件,当敲出adb 就可以出现所有的关联命令。

确实有一个这样的开源插件:

https://github.com/pbreault/adb-idea

不过支持的命令很少,如果有哪位可以结合这两个开源库,做一个较为完备的提示插件,我双手赞成,记得完成联系我一下,有礼物相赠!

3

Java 资源聚合库

编写此文前看了一下github trending,榜上有名。

https://github.com/Snailclimb/Java-Guide

内容好像没有上次推荐的丰富,几个放一起吧:

https://github.com/crossoverJie/Java-Interview

https://github.com/JsonChao/Awesome-Android-Interview

大家没事也可以看看 github trending。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180828G08ONZ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券