BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 郭亮 关注 18 他的粉丝 发布于 2016年11月3日. 估计阅读时间: 7 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

新闻

  1. 《三星新办法逼用户交回手机》:三星电子宣布永久停售、停产Galaxy Note 7手机已经有一段时间,在此期间,三星电子提供了优惠的鼓励政策,希望Note 7用户交回手机,更换三星自己或是其他品牌的手机。然而迄今为止,仍然有大量Note 7用户仍未送回手机。据外媒最新消息,三星电子已经出台了一个计划,限制Note 7充电比例,逼迫用户交回Note 7手机。

  2. 《谷歌与维萨和万事达卡达成Android Pay合作:支持数千个场所购物》:10月25日凌晨,谷歌宣布与维萨和万事达卡达成一项最新的合作关系,从而允许Android Pay移动支付服务用户在支持维萨Checkout或万事达卡Masterpass支付平台的数千个场所中购物。

  3. 《Google承认Pixel相机存在镜头光晕问题 将通过更新解决》:Google Pixel是Android阵营非常优秀的智能手机,Google为其装备了卓越的相机硬件和软件算法,但是并不意味着就没有问题。已经陆续有Pixel用户报告反馈称在光线充足环境下拍摄容易产生一圈容易分心的镜头光晕。对此Google表示承认该问题存在,在即将到来的OTA更新中通过软件手段着手解决这个问题。

教程

  1. 《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的新特性以及其使用方法。

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

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

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

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

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

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

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

开源项目

  1. SuperTextView:一个功能强大的TextView,可以满足日常大部分布局方式,开发者可已自行组合属性配置出属于自己风格的样式。

  2. SlideBack:这是一款高仿微信视差手势滑动返回库。

  3. MultiType-FilePicker:一款轻量级的文件选择器,支持音频、视频、图片的选择。


感谢徐川对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

怎么上YouTube? by 通 高

一个功能强大的TextView,可以满足日常大部分布局方式,开发者可已自行组合属性配置出属于自己风格的样式。 52xiaoshuang.top

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT