Android AAC学习(一)

什么是AAC?

Google官方DEMO
即Android Architecture Components,谷歌在Google I/O 2017上发布的帮助开发者构建易于维护测试/健壮的架构设计方案。它的核心应该是基于观察者模式的,其主要的两大内容就是:

  1. 生命周期相关的 Lifecycle-aware Components(生命周期感知组件)
  2. 数据库解决方案 Room

组件功能:处理数据持久化和管理生命周期(生命周期感知组件执行操作以响应另一个组件(例如活动和片段)的生命周期状态的更改),能够有效的避免内存泄漏等问题。

主要架构图如下:
在这里插入图片描述

如何使用AAC相关组件:
app.gradlew中添加依赖LiveData以及ViewModel

dependencies {
    implementation 'android.arch.lifecycle:extensions:1.1.1'
    annotationProcessor 'android.arch.lifecycle:compiler:1.1.1'
}

时间有限,本篇主要讲解

Lifecycle管理生命周期

Lifecycle 介绍:

Lifecycle 组件指的是 android.arch.lifecycle 包下提供的各种类与接口,可以让开发者构建能感知其他组件(主要指Activity 、Fragment)生命周期(lifecycle-aware)的类。

基本的使用流程:

  1. 让需要监听Activity/Fragment的类实现LifecycleObserver接口
  2. 在相关生命周期方法中做出的动作封装成方法并且加上对应生命周期的注解,形成映射
  3. 被监听的Activity/Fragment实现LifecycleOwner接口,实例化监听类,最后注册监听

监听类: 其中各个注解对应的就是被监听Ac/Fg的生命周期方法

package com.wdl.aac;

import android.arch.lifecycle.Lifecycle;
import android.arch.lifecycle.LifecycleObserver;
import android.arch.lifecycle.OnLifecycleEvent;

/**
 * 创建时间: 2019/3/22 11:35
 * 描述:    Activity生命周期的管理类,与实现了LifecycleOwner接口的Ac/Fg等建立映射关系。有效避免内存泄漏
 *          对外界提供一个接口,管理生命周期使得生命周期从Activity/Fg解耦出来
 */
@SuppressWarnings("unused")
public class ActivityLifeObserver implements LifecycleObserver {

    private static final String TAG = Activ
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值