ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
### 新闻 1. [Android N安全功能详解:为恶意程序开启“困难模式”](http://www.cnbeta.com/articles/512163.htm) 2. [开发者爆料:Android N并非Android 7.0 依然6.X](http://www.cnbeta.com/articles/511899.htm) ### 教程 1. [如何构建Android MVVM应用程序](http://www.jianshu.com/p/2fc41a310f79) Databinding 是一种框架,MVVM是一种模式,两者的概念是不一样的。我的理解DataBinding是一个实现数据和UI绑定的框架,只是一个实现MVVM模式的工具。ViewModel和View可以通过DataBinding来实现单向绑定和双向绑定,这套UI和数据之间的动态监听和动态更新的框架Google已经帮我们做好了。在MVVM模式中ViewModel和View是用绑定关系来实现的,所以有了DataBinding 使我们构建Android MVVM 应用程序成为可能。 2. [RecyclerView的滚动事件研究](http://blog.devwiki.net/index.php/2016/06/13/RecyclerView-Scroll-Listener.html) 开始之前,我们想一下一个列表的滚动过程是怎样的? 列表的滚动一般分为两种:1\. 手指按下 -> 手指拖拽列表移动 -> 手指停止拖拽 -> 抬起手指 2.指按下 -> 手指快速拖拽后抬起手指 -> 列表继续滚动 -> 停止滚动 3. [Android自绘动画实现与优化实战](http://t.cn/R5S5QUd) 我们所熟知的,Android 的图形绘制主要是基于 View 这个类实现。 每个 View 的绘制都需要经过 onMeasure、onLayout、onDraw 三步曲,分别对应到测量大小、布局、绘制。Android 系统为了简化线程开发,降低应用开发的难度,将这三个过程都放在应用的主线程(UI 线程)中执行,以保证绘制系统的线程安全。这三个过程通过一个叫 Choreographer 的定时器来驱动调用更新, Choreographer 每16ms被 vsync 这个信号唤醒调用一次,这有点类似早期的电视机刷新的机制。 4. [Android Studio提高代码质量必杀技:Inspact Code](http://t.cn/R5SCwYY) 静态代码检测是不运行代码的前提下,利用预先设定好的规则对程序进行分析,发现潜在问题。检测工具价值度主要体现在检测规则的数量和检测精确度两个方面。编译器进行编译的过程中会检测程序中的"硬伤",给出错误和警告,静态代码检测工作原理和编译器相似,规则更严苛。 5. [ANROID动态加载技术系列](https://zhuanlan.zhihu.com/p/20515113) 说到动态加载,我们经常使用“插件化”、“热修复”、“热部署”等词汇,所以大家应该不会陌生。本系列的文章的主要目的是分析一下整个动态加载的过程,重点分析其中的关键技术点,并且开发一个比较灵活的动态加载框架,用于满足不同程度的业务需求。在Android开发中采用动态加载技术,可以达到不安装新的APK就升级APP功能的目的,可以用来到达快速发版的目的,也可以用来修复一些紧急BUG。 ### 开源库&项目 1. [ExpandingPager](https://github.com/qs-lll/ExpandingPager) ExpandingPager is a card peek/pop controller 2. [DialogAlchemy](https://github.com/NeoLSN/DialogAlchemy) A dialog utility library. It provides a easy way to let developers deal with screen rotation issue 3. [vertical-stepper-form](https://github.com/ernestoyaquello/vertical-stepper-form) Vertical Stepper Form Library for Android. It follows Google Material Design guidelines. 4. [skin-sprite](https://github.com/geminiwen/skin-sprite) 另一种不重启Activity 切换Android夜间模式的库, 只支持 Api 14以上 5. [MVVMLight](https://github.com/Kelin-Hong/MVVMLight) 一个Android MVVM 轻量级工具库,主要目的是更快捷方便的构建Android MVVM应用程序 6. [WhatsappFormatter](https://github.com/cooltechworks/WhatsappFormatter) Simple formatting options for TextView and EditText in the same way Whatsapp provides. 7. [Spotlight](https://github.com/wooplr/Spotlight) Spotlight is a android library to onboard user by showcasing specific features in the app. 8. [BottomDialogs](https://github.com/javiersantos/BottomDialogs) Material-based bottom sheet. API 11+ required. 9. [Quill](https://github.com/vickychijwani/quill) Ghost blog 客户端 10. [PagerBottomTabStrip](https://github.com/tyzlmjj/PagerBottomTabStrip) 一个基本按照谷歌 Material Design 规范完成的底部导航栏控件 11. [user-validator](https://github.com/ShootrNetwork/user-validator) 方便的用户名、密码和邮箱校验库 12. [NumberPicker](https://github.com/ShawnLin013/NumberPicker) 数字选择器 13. [EqualizerView](https://github.com/gsotti/EqualizerView) 均衡器View 14. [k4l-video-trimmer](https://github.com/knowledge4life/k4l-video-trimmer) 视频修剪库 15. [AbilityChart](https://github.com/jiefly/AbilityChart) 一个能力值属性分布的控件 16. [PinLockView](https://github.com/aritraroy/PinLockView) A clean, minimal, highly customizable pin lock view 17. [stepper-indicator](https://github.com/badoualy/stepper-indicator) Step indicator for onboarding or simple viewpager 18. [RxGroups](https://github.com/airbnb/RxGroups) Easily group RxJava Observables together and tie them to your Android Activity lifecycle 19. [MagicCamera](https://github.com/wuhaoyu1990/MagicCamera) 包含美颜等40余种实时滤镜相机,可拍照、录像、图片修改 20. [hintcase](https://github.com/Nescafemix/hintcase) HintCase is a library for Android that will help you create really awesome hints/tips for your apps ### 工具 1. [Chroma](http://chroma.spencerhamm.com/) 在线配色工具 > 版权声明:欢迎自由转载-非商用-非衍生-保持署名 | [Creative Commons BY-NC-ND 4.0](https://creativecommons.org/licenses/by-nc-nd/4.0/)