zoukankan      html  css  js  c++  java
  • 带你了解Android Jetpack

    1.Jetpack主要特性有以下三点:

    1.加速开发
    组件可单独使用,也可以协同工作,当使用kotlin语言特性时,可以提高效率。

    2.消除样板代码
    Android Jetpack可管理繁琐的Activity(如后台任务、导航和生命周期管理)。

    3.构建高质量的强大应用
    Android Jetpack组件围绕现代化设计实践构建而成,具有向后兼容性,可以减少崩溃和内存泄漏。

     

    2.Jetpack的分类。

    e6R24K.png

    DataBinding:以声明方式将可观察数据绑定到界面元素,通常和ViewModel配合使用。
    Lifecycle:用于管理Activity和Fragment的生命周期,可帮助开发者生成更易于维护的轻量级代码。
    LiveData: 在底层数据库更改时通知视图。它是一个可观察的数据持有者,与常规observable不同,LiveData是生命周期感知的。
    Navigation:处理应用内导航。
    Paging:可以帮助开发者一次加载和显示小块数据,按需加载部分数据可减少网络带宽和系统资源的使用。
    Room:友好、流畅的访问SQLite数据库。它在SQLite的基础上提供了一个抽象层,允许更强大的数据库访问。
    ViewModel: 以生命周期的方式管理界面相关的数据,通常和DataBinding配合使用,为开发者实现MVVM架构提供了强有力的支持。
    WorkManager: 管理Android的后台的作业,即使应用程序退出或设备重新启动也可以运行可延迟的异步任务。

    3.在应用中引入Jetpack相关组件

    在项目build.gradle中添加google() 库,如下所示。

    allprojects {
          repositories {
              google()
              jcenter()
          }
      }

    如果想引入Room,可以在模块build.gradle中这么写:

    implementation   "android.arch.persistence.room:runtime:1.1.1"
    annotationProcessor   "android.arch.persistence.room:compiler:1.1.1 "
    androidTestImplementation  "android.arch.persistence.room:testing:1.1.1"
  • 相关阅读:
    BZOJ3123: [Sdoi2013]森林(启发式合并&主席树)
    BZOJ3212: Pku3468 A Simple Problem with Integers(线段树)
    BZOJ3211: 花神游历各国(线段树)
    BZOJ3207: 花神的嘲讽计划Ⅰ(hash)
    BZOJ3033: 太鼓达人(欧拉回路)
    「LibreOJ NOIP Round #1」旅游路线
    bzoj 2818: Gcd
    bzoj 2006: [NOI2010]超级钢琴
    bzoj 1485: [HNOI2009]有趣的数列
    bzoj 1045: [HAOI2008] 糖果传递
  • 原文地址:https://www.cnblogs.com/ganchuanpu/p/11617476.html
Copyright © 2011-2022 走看看