《Android 经验分享》周刊第 11 期

《Android经验分享》收录国内外最近一周热门的技术博客以及优秀的类库,星期一傍晚将准时更新给你们
微信公众号:Android经验分享
QQ讨论群:386067289

本文已受权微信公众号:Android经验分享,在微信公众号平台原创首发。html

热点新闻
1.安卓8.0多项新特性曝光:看片利器
离Google I/O 2017开发者大会还有两个月左右的时间,该大会最大的看点就是下一代安卓系统Android 8.0,按照以往的传统其代号应该是Android O,“O”有多是Oreo(奥利奥),但目前还没法肯定。如今关于安卓8.0的传闻开始崭露头角了,最新的传闻来自外媒9to5Google。android

2.安卓8.0忽然就来了!Android O预览版发布下载
安卓8.0忽然发布了!谁也没有想到,谷歌忽然发布了安卓8.0的预览版安卓O。谷歌已经面向开发者发布了首个Android O预览版,这也应该是安卓8.0系统的雏形。Android O的命名符合安卓系统的规律,安卓系统的代号每每是甜点的名字,而甜品的首字母则按照字母表来排列。目前还没有制定Android O的“O”是什么甜点,按照猜想,多是“奥利奥”(Oreo)或者是“Oatmeal cookie”(燕麦饼干)。git

热门博客
1.手机QQ Hybrid 的架构演进
涂强,英文ID是StrongTu,于2005年加入腾讯,主要开发PC版本的QQ,后来负责PC版QQ UI引擎的时候作过一些尝试,即在PC客户端上集成浏览器内核,作H5和native混合开发的框架性工做。github

2. 一种Android客户端架构设计分享
技术发展突飞猛进,业界各类Android客户端架构设计,五花八门,但咱们不能简单地说哪一种架构更好,由于脱离业务谈架构是没有任何意义的,适合业务的才是好架构。而架构也不是一成不变的,随着业务的发展,也许当初设计的架构已不足以支撑目前的业务,那么就须要改变以前的架构。接下来将分享下咱们Android客户端的架构设计,在App的某个业务发展阶段或许有一些参考意义。面试

3.Android可伸缩布局-FlexboxLayout(支持RecyclerView集成)
咱们在开发的过程当中会不可避免的引用一些第三方库,好比网络请求库、图片加载库等等。就拿图片加载库来讲,程序中不会只有一个地方来引用到此库,可能有N个类会用到此库来显示图片。这种状况下,就能够经过一个中间层来引用“第三方图片加载库”。这样作的好处是无论第三方图片加载库换成Picasso仍是Glide,只需改变中间层,其余的一行代码都不须要改动。阅读文章,了解详细方案。api

4.Android性能优化(五)之细说Bitmap
Bitmap内存模型,Bitmap的内存回收,Bitmap占有多少内存?如何计算Bitmap占用的内存?Bitmap如何复用? Bitmap如何压缩? Bitmap的总结。浏览器

5.Android 调用系统功能实现图片选择器,你可能会遇到的问题汇总
图片选择器在手机应用中家常便饭,设置头像、聊天传图等常见相似场景都须要使用。为了保持不一样设备上体验的一致性和较好的兼容性,比较稳妥的作法是在应用内自实现相机拍照、相册选图和图片裁剪功能。缓存

6.关于Android RecyclerView的那些开源LayoutManager
Google默认为RecyclerView提供了LinearLayoutManager、StaggeredGridLayoutManager、GridLayoutManager,已经能够知足不少开发需求了,可是实际开发过程当中,免不了出现一些更加新颖的交互设计。因而,便从Github上整理了一波关于RecyclerView可使用的LayoutManager,在实际开发中须要用到时,遇到类似的效果时便可随手拈来,提升效率。性能优化

7.Android 系统中,那些能大幅提升工做效率的 API 汇总(持续更新中...)
“条条大路通罗马。”工做中,实现某个需求的方式每每不是惟一的,这些不一样实现方式不只表如今代码质量上,还影响着咱们的工做效率。就像,在 Android 系统中,总有那么一些不为人知的 API 可以减小咱们不少零碎的工做量。因而,就想凭着一些经验,整理一些经常使用的,找个地方概括总结,也供往后翻阅。微信

8.震惊!如此多的 Android开发技巧!
一些很不错的Android开发技巧,这个项目翻译自 android-tips-tricks去掉了一些我认为不重要的,对我使用过的东东作了评价,同时翻译了一些本身没有注意到的知识点的文章。

9.Android 新推出基于物理的动画库,彻底诠释什么叫作弹簧效果
Android 最近推出一个新的基于物理学的动画支持库,命名为:SpringAnimation(弹簧动画),发布在 Support Library 25.3.0 里面。昨天,Google Android 研发工程师「Nick Butcher」在 Twitter 上发布推文予以公布,并在 gist 给出了一个简单示例代码,演示 SpringAnimation的核心操做。

10.美团点评移动网络优化实践
网络优化对于App产品的用户体验相当重要,与公司的运营和营收息息相关。这里列举两个公开的数据:“页面加载超过3秒,57%的用户会离开。“Amazon页面加载延长1秒,一年就会减小16亿美金营收。

受欢迎的类库
1.ChangeTabLayout
一款炫酷的TabLayout

2.ChannelTagView
一个新闻频道管理 view

3.AutoScrollViewPager
轻量级的能够无限且自动滑动的 ViewPager

4.XXPictureCompress
一个 jni 图片压缩库 使用简单 一句话调用 无第三方依赖, 框架很小, 效果比鲁班要好

5.XXDialog
一个万能dialog

6.CoordinatortablayoutDemo
简单模仿 Airbnb app 的首页导航

7.ILayoutAnimationController
自定义LayoutAnimationController,一行代码搞定布局动画!

8.InputMethodHolder
A keyboard listener for Android which by hooking the InputMethodManager. 经过 hook 监听系统键盘显示

9.AppUpdate
Android 检测更新库

10.AppMethodOrder
一个能让你了解全部函数调用顺序的 Android 库(无需侵入式代码)

完整项目
1.CloudReader
云阅:一款基于网易云音乐UI,使用Gank.Io及豆瓣api开发的符合Google Material Design的Android客户端。项目采起的是MVVM-DataBinding架构开发,现主要包括:干货区、电影区和书籍区三个子模块。DIY网易云音乐原来是如此Cool~
技术要点:
一、基本遵循Google Material Design设计风格。
二、干货集中营内容与豆瓣电影书籍内容。
三、MvvM-DataBinding的项目应用。
四、NavigationView搭配DrawerLayout的具体使用。
五、透明状态栏使用与版本适配。
六、高仿网易云音乐歌单详情页。
七、RxBus代替EventBus进行组件之间通信。
八、ToolBar的全方面使用。
九、Glide加载监听,获取缓存,圆角图片,高斯模糊。
十、水波纹点击效果详细使用与适配。
十一、RecyclerView下拉刷新,上拉加载。
十二、基于DataBinding的ViewHolder。
1三、基于DataBinding的BaseActivity和BaseFragment。
1四、Fragment懒加载模式。
1五、SwipeRefreshLayout结合RecyclerView下拉刷新上拉加载。
1六、CoordinatorLayout+Behavior实现标题栏渐变。

效果预览图:

1.jpg

2.jpg

周刊外话
1.2017 年初、阿里、腾讯、百度、华为、京东、搜狗和滴滴面试题聚集(更新篇)
前一段时间和大牛们交流了一下,据反馈如今Android岗位也没有之前那么多了,没这么好找了,面临2016年寒冬季节,大量公司模仿O2O模式致使死掉企业的不少,在加之培训机构大量的培训人,致使供大于求,固然这不意味着饱和,只是市场更趋于合理一些(只要技术好不用怕的)。如下是(201六、2017 、阿里、腾讯、百度、华为、京东、搜狗和滴滴面试题聚集)

更多精彩文章请关注微信公众号"Android经验分享":这里将长期为您分享Android高手经验、中外开源项目、源码解析、框架设计和Android好文推荐!

扫一扫加我哦
相关文章
相关标签/搜索