转载请注明出处,谢谢!

上个月Google Android Architecture Components 1.0稳定版发布,抽工作间隙写了个demo,仅供参考

Github地址:https://github.com/AllenWen/android-iWeather

1、亮点

一是生命周期管理---Lifecycles,各类组件的引用与周期绑定,从而有效避免内存泄漏;

二是LiveData,数据流中的主角,作用类似于Rx的Observer;

三是推出全新数据库ORM框架---Room,当然也是生命周期安全的,修改即时生效;

四是一个叫Paging的库,用作分页处理,本项目没用到。

2、概述

看图知道,当然是一个MVVM框架了,Acitivity/Fragment 是View ,ViewModel充当VM,由本地数据库和网络数据组成的仓库(Repository)就是Model,

Acitivity/Fragment可以实现LifecycleOwner接口,注册LifecycleObserver从而实现生命周期管理,

LiveData充当单向数据流中的数据,与生命周期绑定

3、项目

借助一个免费天气api,心知天气,写了个极简风格的天气应用,就不贴图了,详情见Github

最新文章

  1. C#开发分享:如何改变系统鼠标样式
  2. 详细!交叉编译时 note: the mangling of 'va_list' has changed in GCC 4.4解决办法
  3. php 快速排序法
  4. 网站为什么要做SEO
  5. 开发实时壁纸(Live Wallpapers)
  6. 【递归】数字三角形 简单dp
  7. iOS 在viewController中监听Home键触发以及重新进入界面的方法
  8. Canvas使用笔记
  9. ACM——搜索(一)
  10. win8.1系统下,点击一个窗口,【当前活动窗口】该窗口无法置顶
  11. MySql排序性能对比
  12. 关于反射Assembly.Load("程序集").CreateInstance("命名空间.类")
  13. sql 查找数据库中某字符串所在的表及字段
  14. WCF 基于Cookie的登录验证回传问题的解决
  15. Servlet的学习(一)
  16. 移动开发meta集合【精】
  17. Mongodb基础用法及查询操作[转载]
  18. OSM数据下载地址
  19. Python数据类型和数据操作
  20. MySQL之爱之初体验

热门文章

  1. spring security 学习笔记
  2. encode与decode
  3. Asp.Net Core配置Swagger
  4. Blocking Cross Origin API request for /api/contents Creating Notebook Failed An error occurred while creating a new notebook.
  5. 屏蔽eslint代码格式报错
  6. 安装vue错误详情解决办法
  7. MTV 和 MVC
  8. 【mongo】查询超时处理
  9. Spring Bean装配
  10. .Net Core 技巧