Android 开发周报:诺基亚手机归来、Lint 代码优化解析

  • 郭亮

2017 年 1 月 11 日

话题:移动Android语言 & 开发架构

  • 《沪江学习 Android 端重构实践》:对于大的架构重构,相信每个公司都很谨慎。沪江学习的原则是将重构融合在每次迭代中,逐步优化代码的结构。这次针对整个应用的架构的调整背景是,公司移动开发部门的人数和项目越来越多,当初设计的移动端的架构让项目的依赖关系越来越复杂,维护成本也越来越高。刚好赶上公司产品的特别需求,作者的团队决定梳理并优化一下整个项目结构。在实施过程中,依然坚持将整个重构的过程融合在每个迭代中,逐步完成一次大的架构升级。

  • 《Gradle 的 Build Scans 是什么功能?》:2016 年 8 月份,Gradle 团队发布了 Gradle 3.0 版本,同时,引入了 Gradle 云服务(Gradle Cloud Services)。该服务“通过为 Gradle 构建工具增加新功能,并从新的角度分析你或你团队项目构建的过程,来提升自动化构建的效率和生产力”。其中第一个提供的云服务是 Build Scans 功能,该功能为免费功能。

  • 《Input 系统—ANR 原理分析》:当 input 事件处理得慢就会触发 ANR,那 ANR 内部原理是什么,哪些场景会产生 ANR 呢。“工欲善其事必先利其器”,为了理解 input ANR 原理,作者通已经写过几篇文章疏通了整个 input 框架的处理流程,前期的文章都是为了这篇而做铺垫。阅读文章,了解 ANR 触发原理以及触发场景。

  • 《Android 上如何实现矩形区域截屏》:对屏幕进行截屏并裁剪有两种方式:早截图和晚截图。早截图,就是先截取全屏,再让用户对截取到的图片进行修改;与之相对的,晚截图,就是先让用户在屏幕上划好区域,再进行截图和裁剪。其实两者并没有什么太大的区别,本文详细介绍了实现晚截图的方法。

  • 《Jack & Jill,Android 新的编译工具链》:在 2016 年随着 Android N 的发布,Google 同时发布了新的编译工具链称之为 Jack 和 Jill。Jack 全名为 Java Android Compiler Kit,Jill 则是 Jack Intermediate Library Linker。Jack 主要负责将 Java 代码直接编译为 Dalvik 字节码等工作,Jill 则是对.class 文件做处理,生成.jack 文件再交由 Jack 处理。本文对 Jack、Jill 进行了简单介绍。

  • 《Android 性能优化:使用 Lint 优化代码、去除多余资源》:Lint 是 Android Studio 提供的代码扫描分析工具,它可以帮助我们发现代码结构和质量问题,同时提供一些解决方案,而且这个过程不需要我们手写测试用例。Lint 会根据预先配置的检测标准检查 Android 项目的源文件,发现潜在的 bug 或者可以优化的地方。Lint 就像是一个洁癖患者,虽然可以让我们代码干净许多,但是如果真要把它提示的全解决,恐怕需要很大的工作量。通过本文,大家能够更加了解 Lint 的工作方式及其使用方法。

  • 《一种视频预加载的方案》:视频的预加载是提高用户体验的重要因素。预加载成为网络视频播放不可或缺的一个技术环节。预加载的形式有:边存边播和代理服务器预下载。两者各有优缺点,本文就预加载技术进行了详细的介绍,对做视频开发的同学会有帮助。

  • 移动Android语言 & 开发架构