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 ...
随机推荐
- 2018-2019-1-20165221&20165225 《信息安全系统设计》实验五:通讯协议设计
2018-2019-1-20165221&20165225 <信息安全系统设计>-实验五:通讯协议设计 OpenSSL学习: 简介: OpenSSL是为网络通信提供安全及数据完整性 ...
- LeetCode第二十二题-创建n对括号
Generate Parentheses 问题简介: 给定n对括号,编写一个函数来生成格式正确的括号的所有组合. 举例: 给定n = 2,解集是: [ “()()”, “(())” ] 给定n = 3 ...
- python 列表中[ ]中冒号‘:’的作用
中括号[ ]:用于定义列表或引用列表.数组.字符串及元组中元素位置 list1 = [, ] list2 = [, , , , , , ] print ] print :] 冒号: 用于定义分片. ...
- WPF实战之一 桌面消息框(右下角消息弹出框)
此版本是根据别人的项目改造的,记录下笔记 原文:https://blog.csdn.net/catshitone/article/details/75089069 一.即时弹出 1.创建弹出框 新建一 ...
- Light OJ 1085 - All Possible Increasing Subsequences
题目 link 给定一个序列, 求出上升子序列的总数. 分析 Dp[i] 表示序列 以 i 结尾的数目. 可知 Dp[i]=∑Dp[x]+1 这是一个前缀和, 用树状数组维护. Code #inclu ...
- nvm的使用
nvm能下载并按照指定 的版本,还能切换已安装好的版本,相当的好用
- 【Ubuntu 18.04 搭建VNC服务器】
https://www.jianshu.com/p/f58fe5cdeb5f 桌面共享 Ubuntu 18.04自带桌面共享,可以将物理桌面共享给VNC.但是无法创建新的桌面. 具体参考 https: ...
- UMeditor控制多张图片上传顺序
多张图片上传的顺序,受到用户使用习惯.插件上传和插件插入页面顺序的影响. 估计是考虑到上传性能,官方没有提供UMeditor控制展示顺序的配置.在上传过程中,用户点击拖动的第一张图片,将作为文件数组中 ...
- python3+Robot Framework+PyCharm自动化测试框架设计
关于自动化测试框架的设计,笔者在前面的随笔里面有介绍和总结,这里结合实际的项目例子做个demo,环境部署参考笔者的的随笔<python3+Robot Framework+PyCharm环境部署及 ...
- C# Conversion Keywords
主要是解决类与其他不同数据类型的转换 类于类的显式转换: explicit public static explicit operator B(A a) { return new B(){a.... ...