Android 开发周报:直播技术方案解析、Native 新特性初探

  • 郭亮

2016 年 11 月 2 日

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

  • 《Android Studio 2.2 Native 开发新特性》:与更早引入 Android Studio 开发环境下的,用于 Native 构建的 Experimental Gradle Plugin 方案相比,官方支持 CMake 和 ndk-build 配合 Gradle 用于构建,颇有一种“返璞归真”的意味。Android Studio 2.2 对 Native 开发的支持程度,已经足够吸引开发者们主动改变跨环境开发的现状了。本文介绍了 Android Studio 2.2 Native 的新特性以及其使用方法。

  • 《豆瓣 App 的模块化实践》:豆瓣在 2014 年聚合了移动端业务,推出了一款叫“豆瓣”的 App。随着豆瓣 App 的发展,豆瓣越来越多的业务线被纳入其中。豆瓣 App 代码量越来越多,功能越来越复杂,体积越来越庞大。为了更从容地应对这种状况,使整个项目更健康,我们实施了模块化。模块化的最终目的是独立出几个业务模块,使得各个业务模块互不干扰,可以独立开发。本文详细介绍了豆瓣 App 的模块化之路。

  • 《淘宝直播技术分享:如何打造体验优秀的“直播 +”产品?》:2016 年是移动直播爆发年,不到半年的时间内无数移动直播 App 掀起了全民直播的热潮。很多不同产品都在自己的应用里面增加了直播模块,希望能趁着这波移动直播的风潮能快速推进自己的产品。而在电商类的 APP 中,淘宝率先在手机直播里面试水电商直播,并用实际的数据证明了这是一种非常具备前景的新模式。

  • 《Fastlane 实战:自动化测试篇》:很多时候,测试工程师不仅要测试新增的功能和有变更的功能,还需要花大量时间对核心功能进行测试覆盖,以及对老版本进行兼容性测试。而这些工作对于移动客户端来说是无法避免的,因为无论架构设计如何解耦,都不能完全保证改动的范围约束在当前的模块;另外,也不可能指望新版本发布后,所有人都在第一时间升级。为了简化测试,很多针对移动客户端的自动化测试工具诞生。本文为 Fastlane 系列文章的第三篇,作者的系列文章详细介绍了自动化测试的解决方案。

  • 《Android 卡慢监控组件简介》:该组件是一个巧妙利用卡慢时间关联出抓取堆栈,并由后台进行聚合的概率统计手法,问题以调用堆栈的信息展示,也是最快的定位手段。组件刚投入项目中就显著的发现大量问题,并有效解决,收益高。腾讯公司内产品:QQ 音乐、全民 K 歌、天天 P 图、画报、企鹅电竞,已接入该监控组件,显著优化了界面卡慢问题。

  • 《如何通过 ArrayMap 和 SparseArray 优化 Android App》:当你需要存储键、值这样的数据类型时,脑海里想到的第一个数据类型应该是 HashMap。然后便开始肆无忌惮的到处使用它,而从不考虑它所带来的副作用。本文讲述了为何要使用 ArrayMap 和 SparseArray 来优化 Android 应用,以及其使用场景。

  • 《Android 爬坑之旅:软键盘挡住输入框问题的终极解决方案》:在 Android 开发的路上,“软键盘挡住了输入框”这个坑,可谓是一个旷日持久的巨坑。大多数情况下,我们可以通过设置 android:windowSoftInputMode 的值 adjustPan 或者 adjustResize 解决问题。而在 H5、Hybrid 几乎已经成为 App 标配的时候,开发者经常会碰到的情况是:软键盘是由 WebView 中的网页元素所触发弹出的。这时候问题就变得比较复杂。本文给出了我们解决改问题的具体方案。

  • 从 0 到 1 打造直播 App:目前较为成熟的直播产品,大致都是以 Server 端、H5 直播前端和 Native(Android,iOS)搭配实现直播。本文主要从 Android 客户端出发,从最初的录制视频到客户端观看直播的整个流程,给出了各个技术点的概要和解决方案,从 0 到 1 完成了简单的直播实现。从 0 到 1 易,从 1 到 100 还有更多的技术细节有待研究。

  • 移动Android语言 & 开发架构