Android Architecture Components--项目实战
转载请注明出处,谢谢!
上个月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
Android Architecture Components--项目实战的更多相关文章
- App 组件化/模块化之路——Android 框架组件(Android Architecture Components)使用指南
面对越来越复杂的 App 需求,Google 官方发布了Android 框架组件库(Android Architecture Components ).为开发者更好的开发 App 提供了非常好的样本. ...
- C# Xamarin For Android自动升级项目实战
一.课程介绍 “明人不说暗话,跟着阿笨一起玩Xamarin”,本次分享课程阿笨将带来大家一起学习Xamarin For Android系列<C# Xamarin For Android自动升级项 ...
- Android框架式编程之Android Architecture Components
1. 当前Android开发面临的问题 Android开发不同于传统的桌面程序开发,桌面程序一般都有唯一的快捷方式入口,并且常作为单进程存在:而一个典型的Android应用通常由多个应用组件构成,包括 ...
- 安卓构架组件——概述 Android Architecture Components
谷歌官文文档地址:https://developer.android.google.cn/topic/libraries/architecture 安卓构架组建是库的集合:帮助你设计健壮的.易测试的. ...
- Android Architecture Components
https://developer.android.com/topic/libraries/architecture/index.html ViewModel 有LiveData Activity 监 ...
- android------2018 年初值得关注的 16 个新 Android 库和项目
1. transitioner Transitioner 是一个为两个拥有嵌入子视图的视图之间提供简便.动态且可调整的动画效果的库.它纯 100% 使用 Kotlin 编写而成,使用 MIT 许可,且 ...
- Android项目实战--手机卫士开发系列教程
<ignore_js_op> banner131010.jpg (71.4 KB, 下载次数: 0) 下载附件 保存到相册 2 分钟前 上传 Android项目实战--手机卫士01- ...
- android学习视频(实战项目演练)
1.基于Android平台实战无线点餐系统(客户端(Client)和服务端(Server))①http://kuai.xunlei.com/d/xmBrDwI8CAAyXVFRa3d②http://k ...
- Android项目实战(二十九):酒店预定日期选择
先看需求效果图: 几个需求点: 1.显示当月以及下个月的日历 (可自行拓展更多月份) 2.首次点击选择"开始日期",再次点击选择"结束日期" (1).如果&qu ...
随机推荐
- textarea高度自适应(转载)
原文地址:https://blog.csdn.net/itzhongzi/article/details/73949712
- java界面--WePush-master 项目跑起来 -碰到的问题
仅能在IntelliJ里面打开GUI Form文件来进行界面的拖拽设计--eclipse中也可以了 当eclipse 打开.form文件时,提示有.对应的编辑工具可以打开它,请到市场去安装 但是:本人 ...
- linux 查看/修改jdk版本
linux 查看/修改jdk版本 配置环境变量vim /etc/profile 编辑profile文件 在底部加入JAVA_HOME=/usr/java/jdk1.8PATH=$JAVA_HOME/b ...
- 51nod 2512
看错题目!!啊啊啊,都说了不能有前导,我怎么这么想当然呢!!另外1也是2的幂次方 代码: #include<iostream> #include<cstdio> #includ ...
- python正则表达式--分组、后向引用、前(后)向断言
无名.有名分组 (1)正则表达式—无名分组 从正则表 达式的左边开始看,看到的第一个左括号“(”表示表示第一个分组,第二个表示第二个分组, 依次类推. 需要注意的是,有一个隐含的全局分组(就是索引号为 ...
- Mac 与 windows eclipse 快捷键对照
Mac windows 方法注释 option+command+j alt+shift+j 在方法里上右击,source -> Generate Element Comment 删除当前行 ...
- Chrome浏览器自动填充<input>标签的密码
问题:登录页面登录时,Chrome浏览器保存了用户名和密码,在其他页面管理其他的账户和密码时,密码框先是显示正确的密码,然后一闪而过被覆盖. 原因:问了技术主管才得知,Chrome浏览器中的,保存用户 ...
- MySQL----下载安装
MySQL 的官网下载地址:http://www.mysql.com/downloads/ 注意 1. MySQL Community Server 社区版本,开源免费,但不提供官方技术支持.2. M ...
- CSV文件导入导mysql数据库
1.导入 基本语法: load data [low_priority] [local] infile 'file_name txt' [replace | ignore] into table tbl ...
- Topshelf的使用
一.简介 Topshelf可用于创建和管理Windows服务.其优势在于不需要创建windows服务,创建控制台程序就可以.便于调试. 二.官方地址: 1.官网:http://topshelf-pro ...