Android 开发周报:美团热更新方案 Robust 开源、Apk 编译速度优化详解

  • 郭亮

2017 年 3 月 22 日

话题:Android语言 & 开发架构

  • 《Android 热更新方案 Robust 开源,新增自动化补丁工具》:Robust 热更新系统借鉴 Instant Run 原理,实现了一个兼容性更强而且实时生效的热更新方案。其基本思路是,Robust 热更新系统在一个方法的入口处插入一段跳转代码,当发现某个方法出现 bug 就跳转执行补丁中的代码,略过原有代码的执行,否则执行原有方法体逻辑。

  • 《手把手教你绘制 Android 粘性果冻动画组件》:Android3.0 之后开启了 GPU 硬件加速让图形渲染没以前那么卡顿,特别是 5.0 之后的 material design 更是引领潮流。作者利用工作之余,写了一个效果很赞的果冻动画组件,本文详细介绍了组件的实现原理及用到的算法。文章涉及到的源码在这里

  • 《20 分钟理解 React Native For Android 原理》:目前有很多公司已经使用了 React Native 技术,如果要定制化需求及性能优化则需要对 React Native 底层原理有更深入的理解。作者通过研读源代码,详细分析了 Android 中的 React Native 实现原理。本文主要分析了 Java 层实现,对 C++ 和 JS 笔墨较少。

  • 《Android APP 启动优化》:我们在点击桌面图标的时候,偶尔会出现一个白屏,然后才进入主界面,这是因为从桌面点击 APP 图标启动应用开始,程序会显示一个启动窗口等待 Activity 的创建加载完毕再进行显示。冷启动白屏持续时间可能会很长,这可是个槽糕的体验,本文给出了解决该问题的方案。

  • 《Android 应用优化小手册》:性能优化是每一位 Android 开发同学的必修课,性能优化的技术也在不断的发展变化,本文从布局优化、内存优化、电量优化、网络优化、启动优化、体积优化、性能优化、业务优化 8 个维度讲解了如何进行性能优化。

  • 《加快 apk 的构建速度,如何把编译时间从 130 秒降到 17 秒》:公司的项目代码比较多,每次调试改动 Java 文件后要将近 2 分钟才能跑起来,实在受不了。作者在网上找了一大堆配置参数也没有很明显的效果,尝试使用 instant run 效果也不怎么样,然后又尝试使用 freeline 编译速度还可以但是不稳定,每次失败后全量编译很耗费时间,既然没有好的方案就于是作者开始自己尝试做。本文的源码在这里

  • 《FlexboxLayout 帮助您完成聪明的 UI 布局》:去年 Google 的 I/O 上发布了 ConstraintLayout,使得开发者在构建复杂布局的同时能够让视图层级得到精简。它在 Android Studio 的 Visual Layout Editor 中也同样可以使用。同时,Google 开源了 FlexboxLayout,使得 Android 里的 CSS Flexible Layout 模块也能拥有同样强大的功能。本文详细介绍了 FlexboxLayout 的使用方法。

  • 《美团点评移动网络优化实践》:网络优化对于 App 产品的用户体验至关重要,与公司的运营和营收息息相关。有两个公开的数据:页面加载超过 3 秒,57% 的用户会离开。Amazon 页面加载延长 1 秒,一年就会减少 16 亿美金营收。在美团点评,监控团队开发了基于端到端的客户端监控平台。端对端就是请求从客户端发出到服务端响应返回的整个过程。它区别于后台服务监控,是一种从用户角度观察到的真实体验监控。本文是美团网络优化的实践,对于我们进行相应优化很有参考价值。

  • Android语言 & 开发架构