摘要: 梳理一下各个部分的流程: 由于上面的案例是在onCreate中订阅的,那么最开始先执行的应该是addObserver,这个时候会把LifecycleRegistry的mState(下文简称RS)置为INITIALIZED。并向observerMap中添加封装过的ObserverWithState,其 阅读全文
posted @ 2018-05-31 11:49 想不起来的角落 阅读(493) 评论(0) 推荐(0) 编辑
摘要: 近期Google的Architecture Component 库 又迎来了两个新的组件:Navigation 、WorkManager WorkManager定义 管理一些要在后台工作的任务 ,在没有启动app的情况下保证任务能被执行。 ps:这里有没有想起一些其他概念!!比如 守护进程!!互相调 阅读全文
posted @ 2018-05-31 11:46 想不起来的角落 阅读(1455) 评论(0) 推荐(0) 编辑
摘要: Paging Library 分页加载库 用于逐步从数据源加载信息,而不会耗费过多的设备资源或是等待太长的时间。 现有的分页加载功能的优点 mix 缺陷: CursorAdapter ,使得从数据库加载数据到ListVIew变得非常容易。 但是这是在主线程中查询数据库,并且分也的内容实用低效的Cur 阅读全文
posted @ 2018-05-31 11:45 想不起来的角落 阅读(1400) 评论(0) 推荐(0) 编辑
摘要: Room定义 Room是一个持久化工具,和ORMLite greenDao类似。在开发中利用Room来操作SQLite数据库,在SQLite上提供了一个方便访问的抽象层。 传统SQLite的缺陷: 没有编译时SQL语句的检查。当数据库发生变化时,需要手动的更新相关代码,会花费相当多的时间并且容易出错 阅读全文
posted @ 2018-05-31 11:44 想不起来的角落 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 带着下面的这个问题开始ViewModel的学习: ViewModel的生命周期是如何控制的,并且如何保证在一定范围内的唯一性? 官方文档里这样写到: The ViewModel class is designed to store and manage UI-related data in a li 阅读全文
posted @ 2018-05-31 11:43 想不起来的角落 阅读(2977) 评论(0) 推荐(0) 编辑
摘要: 一、LiveData 定义 LiveData 是一种持有可被观察数据的类。LivaData是有生命周期感知能力的,可以在Activity、Fragment、Services生命周期是活跃状态时更新组件。 LiveData 实际上就是一个 Data Holder类,既可以持有数据,也可以被监听,当数据 阅读全文
posted @ 2018-05-31 11:41 想不起来的角落 阅读(2088) 评论(0) 推荐(0) 编辑
摘要: Handling LifeCycle android.arch.lifecycle 提供的类和接口,让使用者构建能够感知生命周期。 Lifecycle is a class that holds the information about the lifecycle state of a compo 阅读全文
posted @ 2018-05-31 11:39 想不起来的角落 阅读(1198) 评论(0) 推荐(0) 编辑
摘要: 引言 设计App架构的基本原则 Soc 原则 ,Separation of concerns 分离关注点原则 。简单来说就是模块化,低耦合。从Android 角度来说就是不要将任何有关UI操作以及调用系统组件的无关方法放到View层的Activity 或是Fragment类中。具体原因大家都知道的, 阅读全文
posted @ 2018-05-31 11:36 想不起来的角落 阅读(1740) 评论(0) 推荐(0) 编辑
摘要: Gradle定义 Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言。 Gradle安装 Android Studio 新建项目会自动构建下载Gradle。下载地址: Mac上会默 阅读全文
posted @ 2018-05-31 11:33 想不起来的角落 阅读(313) 评论(0) 推荐(0) 编辑