安卓开发周报第1期

2017年2月27日-2017年3月5,发布于3月6,周一

文章

Android App启动流程

在使用Android手机时,我们总会启动各种各样的App以满足生活的各种需求,你是否想过,我们是怎样启动这些APP的?

OkHttp源码分析(深入浅出OkHttp源码)

kHttp3是Square出品的高质量Http网络请求库,目前在GitHub上的star数超过17000。很多Android项目的网络组件都是基于OkHttp封装的,使用起来很简单,但背后是怎么实现的,作者从源码层面来分析。

苹果核 - Tangram 的基础 —— vlayout(Android) 

vlayout 是手机天猫 Android 版内广泛使用的一个基础 UI 框架项目 提供了一个用于RecyclerView的自定义的LayoutManger,可以实现不同布局格式的混排,目标是支撑客户端native页面的快速开发

(译)关于Android strings.xml-你应该了解的几个原则 

不同的页面不要重用一个string,同一页面的string用前缀和注释分离,使用 Resources#getString(int id, Object… formatArgs) 来格式化 strings,使用 Resources#getQuantityString (int id, int quantity) 来处理复数

共享元素动画-第五部分:修复闪烁的bug 

Mike Scamell继续分享它的共享元素动画系列。

Great animations with PageTransformer 

作者分享了如何使用PageTransformer来实现视差动画。

高仿微信视频录制,涂鸦水印添加, 基于ffmpeg视频编辑 

作者分享了一个基于微信录制,  分析ffmpeg视频编辑的demo,

给RecyclerView加上折叠的效果

把ItemDecoration的间隔设置为负数,实现折叠效果。

(译)使用FlexboxLayout构建灵活的布局

使用FlexboxLayout构建灵活的布局,现在增加了FlexboxLayoutManager,可以和RecyclerView一起使用。

传统MVP用在项目中是真的方便还是累赘?

jess结合实际,谈了谈关于MVP开发模式的冷思考,并提出一些解决方案。

代码

vlayout

vlayout 是手机天猫 Android 版内广泛使用的一个基础 UI 框架项目

CircleMenu

一个漂亮的圆形菜单。

FastHub

一个功能非常完善,界面简洁漂亮的github客户端。

Shuttle

一个开源的音乐播放器。

CameraKit-Android

一个基于谷歌CameraView library的相机处理程序,让安卓中最复杂的Camera api更简单。

WeiXinRecordedDemo

高仿微信视频录制,涂鸦水印添加, 基于ffmpeg视频编辑

GracefulMovies

简影讯,简约精彩影讯。完全Material Design风格,基于Retrofit+RxJava+MVP+Colorful多彩主题框架开发的高颜值影讯app。简约,优雅,精彩,即看即走。

babyIyo

 IYO是一款母婴月子中心订阅的app,设计遵循Metrial Design风格,供大家学习和借鉴

新闻

Android Studio 2.3 正式版发布 

Android Studio 2.3 正式版发布了,该版本包含一些新特性,包括对 WebP 支持的更新;ConstraintLayout 库支持更新和布局编辑器的部件面板。提供一个新的 App Link 助手可以帮助你在应用中构建 URI 的统一视图。新的运行按钮提供更直观和可靠的立即运行体验。最后是 Android 模拟器的测试,支持文本的复制和粘贴。

ConstraintLayout 1.0.1发布 

谷歌发布了ConstraintLayout,并推荐在布局编辑器中使用它。

Kotlin 1.1发布,增加对JavaScript 的支持 

开发团队宣布,Kotlin 1.1 正式发布。 这是一个很大的进步,使 Kotlin 能在许多新的场景中使用。