Android 开发周报:Android 份额超越 Windows、Apk 瘦身探索

  • 郭亮

2017 年 4 月 16 日

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

  • 《Android 项目代码质量保证实践》:一个项目开发必然会涉及团队协作,而工程质量就需要团队去保证。一般我们期望的代码无潜在风险、无重复逻辑、风格无差异、可阅读性好、新人上手速度快等。为了达到上述目标,一般团队都会制定一套自己认可的编码规范,并且周期性进行 code review。但这种人肉排查方式,很容易遗漏部分问题,保障性还是有些不足。为此,作者所在的团队从编码前期、编码中期和编码后期保证进行了初步尝试。

  • 《Android APK 瘦身探索》:虽然说 APK 瘦身对于 Android 对应用可分配内存的限制影响不大,但是还是有一些影响的,就以图片为例,将一些小图标替换为 iconfont 能有效减小内存的分配,防止 OOM 的出现。另外,无论是 iOS 开发者还是 Android 开发者都应该尝试最好学会如何为 IPA 或 APK 瘦身,不仅仅是为了帮助用户省流量、减少下载时间、减少占用的存储空间等等,更重要的是为了提高下载率。

  • 《经典随机 Crash 之一:线程安全》:Android QQ 在 2016 下半年连着好几个版本二灰 Crash 率都很高,如果说有新需求,一灰的 Crash 率高,还能找点理由,可是开发童鞋解过一灰的 Crash 单后,为啥二灰还有这么高的 Crash 率,我们还有覆盖全 SNG、不少外 BG 明星产品的终端稳定性测试工具 NewMonkey 随身版每天都在跑,更何况大多 Top Crash 都发生在用户使用很普通、很频繁的场景,实在令人匪夷所思。阅读文章,看看作者是如何解决该问题的。

  • 《Android 安全开发之启动私有组件漏洞浅谈》:Android 应用中,如果某个组件对外导出,那么这个组件就是一个攻击面。很有可能就存在很多问题,因为攻击者可以以各种方式对该组件进行测试攻击。但是开发者不一定所有的安全问题都能考虑全面。本文给出了私有组件导出的具体建议。

  • 《利用 Android 源码,轻松实现汉字转拼音功能》:实际开发过程中需要用到实现汉字转成拼音的场景比较常见,如:通讯录里的联系人字母导航栏,为没有设置头像的用户生成一个名字首字母的头像,国家(省份、城市)字母导航栏,搜索关键字转换成拼音等。本文分享了一个从 Android 系统源代码提取出来的汉字转成拼音实现方案,只要一个类,560 多行代码就可以让你轻松实现汉字转成拼音的功能,且无需其他任何第三方依赖。

  • 《Android 性能优化 - 渲染优化》:我们在开发的过程中,可能经常会遇到测试的一些反馈,就是 APP 运行卡顿的问题。我们通常所讲的卡顿问题都是因为渲染掉帧的问题引起视觉上的卡顿感。所以了解渲染机制,我们在项目的开发过程中,可以有意识的少挖坑。同时要打造一款精品的应用,注意渲染优化也是非常重要的一件事情。本文给出了具体的渲染优化方案,推荐阅读。

  • 《Android ConstraintLayout 使用指南》:ConstraintLayout 翻译成中文也称为约束布局,类似于 iOS 中的布局约束。升级到 Android Studio 2.3 之后,IDE 默认生成的 Activity 布局都是以 ConstraintLayout 做为根布局,作者体验了一把这个 Google 去年就开始力推的 ConstraintLayout 后,觉得非常不错,本文主要是记录 ConstraintLayout 各个方面的使用知识。

  • 《Uber 的外卖团队是如何使用 React Native 的?》:Uber 基于 React Native 技术构建的 Restaurant Dashboard 应用为送餐业务 UberEATS 提供支持,消除纯 Web 应用在功能方面的局限,为餐厅共和顾客打造更无缝的订餐体验。本文介绍了 Uber 团队是如何在实际项目中使用 React Native 的,如果你的项目正在考虑将 React Native 用于生产环境,那么可以参考 Uber 的经验。

  • 移动Android语言 & 开发架构