jetpack : viewmodel 、livedata 、lifecycle依赖_androidx.lifecycle:lifecycle-common:2.0.0-程序员宅基地

技术标签: jetpack  

lifecycle 依赖

//androidx版本 lifecycle
implementation group: 'androidx.lifecycle', name: 'lifecycle-runtime', version: '2.0.0'
implementation group: 'androidx.lifecycle', name: 'lifecycle-common', version: '2.0.0'
implementation group: 'androidx.lifecycle', name: 'lifecycle-livedata', version: '2.0.0'
implementation group: 'androidx.lifecycle', name: 'lifecycle-viewmodel', version: '2.0.0'
//包含livedata + viewmodel
implementation group: 'androidx.lifecycle', name: 'lifecycle-extensions', version: '2.0.0'
//包含kotlin
implementation group: 'androidx.lifecycle', name: 'lifecycle-viewmodel-ktx', version: '2.0.0'
implementation group: 'androidx.lifecycle', name: 'lifecycle-livedata-ktx', version: '2.0.0'
//
implementation group: 'androidx.lifecycle', name: 'lifecycle-common-java8', version: '2.0.0'

//arch版本 lifecycle
implementation group: 'android.arch.lifecycle', name: 'extensions', version: '1.1.1'
implementation group: 'android.arch.lifecycle', name: 'runtime', version: '1.1.1'
implementation group: 'android.arch.lifecycle', name: 'livedata', version: '1.1.1'
implementation group: 'android.arch.lifecycle', name: 'viewmodel', version: '1.1.1'
implementation group: 'android.arch.lifecycle', name: 'livedata-core', version: '1.1.1'
implementation group: 'android.arch.lifecycle', name: 'common', version: '1.1.1'
implementation group: 'android.arch.lifecycle', name: 'common-java8', version: '1.1.1'

查看依赖关系:

//输出依赖关系到txt文件
gradlew -q  :app:dependencies >log.txt  

lifecycle-extensions: 包含 livedata 、viewmodel 、lifecycle

+--- androidx.lifecycle:lifecycle-extensions:2.2.0-alpha01
|    +--- androidx.lifecycle:lifecycle-runtime:2.2.0-alpha01 (*)
|    +--- androidx.arch.core:core-common:2.1.0-beta01 (*)
|    +--- androidx.arch.core:core-runtime:2.1.0-beta01 (*)
|    +--- androidx.fragment:fragment:1.0.0 -> 1.1.0-beta01 (*)
|    +--- androidx.lifecycle:lifecycle-common:2.2.0-alpha01 (*)
|    +--- androidx.lifecycle:lifecycle-livedata:2.2.0-alpha01 (*)
|    +--- androidx.lifecycle:lifecycle-process:2.2.0-alpha01
|    |    \--- androidx.lifecycle:lifecycle-runtime:2.2.0-alpha01 (*)
|    +--- androidx.lifecycle:lifecycle-service:2.2.0-alpha01
|    |    \--- androidx.lifecycle:lifecycle-runtime:2.2.0-alpha01 (*)
|    \--- androidx.lifecycle:lifecycle-viewmodel:2.2.0-alpha01 (*)

lifecycle-livedata-ktx: 包含kotlin 和 livedata

+--- androidx.lifecycle:lifecycle-livedata-ktx:2.2.0-alpha01
|    +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.20 -> 1.3.41 (*)
|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.1 -> 1.3.0-M2 (*)
|    +--- androidx.lifecycle:lifecycle-livedata:2.2.0-alpha01 (*)
|    \--- androidx.lifecycle:lifecycle-livedata-core-ktx:2.2.0-alpha01
|         +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.20 -> 1.3.41 (*)
|         \--- androidx.lifecycle:lifecycle-livedata-core:2.2.0-alpha01 (*)

lifecycle-viewmodel-ktx: 包含kotlin 和 viewmodel

androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0-alpha01
+--- org.jetbrains.kotlin:kotlin-stdlib:1.3.20 -> 1.3.41 (*)
+--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.1 -> 1.3.0-M2
|    +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.40 -> 1.3.41 (*)
|    \--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.0-M2
|         +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.40 -> 1.3.41 (*)
|         \--- org.jetbrains.kotlin:kotlin-stdlib-common:1.3.40 -> 1.3.41
\--- androidx.lifecycle:lifecycle-viewmodel:2.2.0-alpha01 (*)

lifecycle-runtime: 只包含 lifecycle

+--- androidx.lifecycle:lifecycle-runtime:2.0.0
|    +--- androidx.lifecycle:lifecycle-common:2.0.0
|    |    \--- androidx.annotation:annotation:1.0.0
|    +--- androidx.arch.core:core-common:2.0.0
|    |    \--- androidx.annotation:annotation:1.0.0
|    \--- androidx.annotation:annotation:1.0.0

AndroidX 的 appcompat 包:

implementation 'androidx.appcompat:appcompat:1.0.2'

查看依赖可看到已包含了lifecycle的 viewmodel 、livedata

+--- androidx.appcompat:appcompat:1.0.2
|    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    +--- androidx.core:core:1.0.1 -> 1.0.2
|    |    +--- androidx.annotation:annotation:1.0.2
|    |    +--- androidx.collection:collection:1.0.0
|    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    +--- androidx.lifecycle:lifecycle-runtime:2.0.0
|    |    |    +--- androidx.lifecycle:lifecycle-common:2.0.0
|    |    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    +--- androidx.arch.core:core-common:2.0.0
|    |    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    \--- androidx.versionedparcelable:versionedparcelable:1.0.0
|    |         +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |         \--- androidx.collection:collection:1.0.0 (*)
|    +--- androidx.collection:collection:1.0.0 (*)
|    +--- androidx.cursoradapter:cursoradapter:1.0.0
|    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    +--- androidx.legacy:legacy-support-core-utils:1.0.0
|    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    +--- androidx.documentfile:documentfile:1.0.0
|    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    +--- androidx.loader:loader:1.0.0
|    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    +--- androidx.lifecycle:lifecycle-livedata:2.0.0
|    |    |    |    +--- androidx.arch.core:core-runtime:2.0.0
|    |    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    |    \--- androidx.arch.core:core-common:2.0.0 (*)
|    |    |    |    +--- androidx.lifecycle:lifecycle-livedata-core:2.0.0
|    |    |    |    |    +--- androidx.lifecycle:lifecycle-common:2.0.0 (*)
|    |    |    |    |    +--- androidx.arch.core:core-common:2.0.0 (*)
|    |    |    |    |    \--- androidx.arch.core:core-runtime:2.0.0 (*)
|    |    |    |    \--- androidx.arch.core:core-common:2.0.0 (*)
|    |    |    \--- androidx.lifecycle:lifecycle-viewmodel:2.0.0
|    |    |         \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    +--- androidx.localbroadcastmanager:localbroadcastmanager:1.0.0
|    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    \--- androidx.print:print:1.0.0
|    |         \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    +--- androidx.fragment:fragment:1.0.0
|    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    +--- androidx.legacy:legacy-support-core-ui:1.0.0
|    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
|    |    |    +--- androidx.customview:customview:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    \--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    +--- androidx.viewpager:viewpager:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    |    \--- androidx.customview:customview:1.0.0 (*)
|    |    |    +--- androidx.coordinatorlayout:coordinatorlayout:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    |    \--- androidx.customview:customview:1.0.0 (*)
|    |    |    +--- androidx.drawerlayout:drawerlayout:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    |    \--- androidx.customview:customview:1.0.0 (*)
|    |    |    +--- androidx.slidingpanelayout:slidingpanelayout:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    |    \--- androidx.customview:customview:1.0.0 (*)
|    |    |    +--- androidx.interpolator:interpolator:1.0.0
|    |    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    +--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    +--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    |    \--- androidx.interpolator:interpolator:1.0.0 (*)
|    |    |    +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
|    |    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    |    |    \--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    |    |    \--- androidx.cursoradapter:cursoradapter:1.0.0 (*)
|    |    +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
|    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    +--- androidx.loader:loader:1.0.0 (*)
|    |    \--- androidx.lifecycle:lifecycle-viewmodel:2.0.0 (*)
|    +--- androidx.vectordrawable:vectordrawable:1.0.1
|    |    +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    \--- androidx.core:core:1.0.0 -> 1.0.2 (*)
|    \--- androidx.vectordrawable:vectordrawable-animated:1.0.0
|         +--- androidx.vectordrawable:vectordrawable:1.0.0 -> 1.0.1 (*)
|         \--- androidx.legacy:legacy-support-core-ui:1.0.0 (*)

androidx.core:core:


+--- androidx.core:core:1.0.1 -> 1.0.2
|    +--- androidx.annotation:annotation:1.0.2
|    +--- androidx.collection:collection:1.0.0
|    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    +--- androidx.lifecycle:lifecycle-runtime:2.0.0
|    |    +--- androidx.lifecycle:lifecycle-common:2.0.0
|    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    +--- androidx.arch.core:core-common:2.0.0
|    |    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    |    \--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|    \--- androidx.versionedparcelable:versionedparcelable:1.0.0
|         +--- androidx.annotation:annotation:1.0.0 -> 1.0.2
|         \--- androidx.collection:collection:1.0.0 (*)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/sinat_31057219/article/details/97136708

智能推荐

current_session_context_class_cp30 current_session_context_class-程序员宅基地

文章浏览阅读1.3w次。平时在单独使用hibernate的时候,习惯于配置属性thread根据文档,这个是hibernate3.1以后的一个新扩展,目的在于可以让我们在某一个上下文环境(比如说当前线程)中可以通过SessionFactory.getCurrentSession()得到同一个session会话.后来当我们把spring,hibernate整合的时候,在spri_cp30 current_session_context_class

人机交互系统(1.1) ——Annoy算法(海量数据查找)_annoy 算法 原理-程序员宅基地

文章浏览阅读1.9k次,点赞3次,收藏8次。前言一旦文档变成这种稠密向量形式,那如何从海量文本中快速查找出相似的Top N 文本呢?这就不得不提到一个海量数据相似查找算法——Annoy算法。算法原理建立索引Annoy的目标是建立一个数据结构,使得查询一个点的最近邻点的时间复杂度是次线性。Annoy 通过建立一个二叉树来使得每个点查找时间复杂度是O(log n)。 看下面这个图,随机选择两个点,以这两个节点为初始中心节点,执行聚类..._annoy 算法 原理

windows10下破解开机密码_猕猴桃mimikatz-程序员宅基地

文章浏览阅读1.2w次。剪切刚刚导出的注册表文件到猕猴桃x64目录下。mimikatz(猕猴桃破解工具)此方法破解win10下所有账户的密码。把此文件复制到猕猴桃x64文件夹下。2.破解win10所有账户密码。此步将会破解所有账户的哈希密码。打开带管理员权限的cmd窗口。NTLM是加密过的账户密码。以管理员身份运行猕猴桃。以管理员权限打开猕猴桃。(测试机只有一个账户)原理是利用注册表文件。_猕猴桃mimikatz

win10装机教程-程序员宅基地

文章浏览阅读438次。win10装机教程20200225-装机教程.docx_win10装机教程

Java本地工具化类的简单例子_java 本地化语言工具类-程序员宅基地

文章浏览阅读2.1k次。Java本地工具化类的简单例子:package com.bbwl.resource;import java.text.DateFormat;import java.text.MessageFormat;import java.text.NumberFormat;import java.util.Date;import java.util.GregorianCalendar;import jav_java 本地化语言工具类

使用MeterSphere前置脚本(BeanShell)模拟签名机制调用阿里云接口-程序员宅基地

文章浏览阅读3.4k次,点赞4次,收藏9次。一个非常偶然的机会,我们公司开始使用MeterSphere一站式开源持续测试平台作为我们的测试工具。不得不说,MeterSphere作为一个测试平台,合理有效集成了最通用的测试管理功能和最常用的测试工具,能够实现测试团队的高效协同,并且预计在未来很长一段时间也可以支撑我们更加丰富的测试工作拓展。本着好东西就要分享的态度,接下来我就来分享下我们公司是如何使用MeterSphere前置脚本模拟签名机制调用阿里云接口。一、关于接口测试目前许多系统的提供的API或者SDK一般都会带有一些签名机制,即通过acc_metersphere前置脚本

随便推点

计算机JW,被它颜值所吸引:Casio卡西欧JW-200SC计算器 入手体验-程序员宅基地

文章浏览阅读324次。被它颜值所吸引:Casio卡西欧JW-200SC计算器 入手体验2019-03-22 09:38:216点赞7收藏8评论因为工作需要,最近自己也正打算入手一款计算器,本来看上了米家的计算器,喜欢它那白色简单的外观,后来看到张大妈众测频道上新了这款卡西欧的计算器,被它的外观设计给迷上了,除了大一点点,怎么看怎么顺眼,正好赶上三八妇女节的优惠价格在天猫入手了它,这样也不用苦苦的等众测了,你说是不是。入...

cesium-鹰眼图_cesium鹰眼图-程序员宅基地

文章浏览阅读1.5k次。cesium-鹰眼图介绍鹰眼图是GIS中一个基本的功能,鹰眼图,顾名思义,在鹰眼图上可以像从空中俯视一样查看地图框中所显示的地图在整个图中的位置。实现思路在原有的地图上新增一个viewer(地图)让新增的地图和原地图联动视角禁用小地图的操作完整代码<!DOCTYPE html><html lang="en"><head> <!-- Use correct character set. --> <meta char_cesium鹰眼图

关于DataTable添加新列到指定列的方法-程序员宅基地

文章浏览阅读725次。在开发新项目的时候发现了一个问题dtResult.Columns.Add()方法只能将指定的列添加到DataTable的列的最后的位置,但是不能添加到指定的列上。举例来说,假设dtResult总共有3列(列名分别是col1,col2,col3),我们新定义一个列,列名是col100,那么dtResult.Columns.Add(col100)方法只能将列添加到第四列,这个时候新表将..._返回datatable数据,我想把列名加到 xtrareport中?

json对象转换成字符串 java_将java对象转换成json字符串-程序员宅基地

文章浏览阅读328次。package com.cjonline.foundation.util;import java.lang.reflect.Field;import java.math.BigDecimal;import java.text.SimpleDateFormat;import java.util.Collection;import java.util.Date;public class JsonUti..._fieldvalue instanceof string

mysql增加列,修改列名、列属性,删除列-程序员宅基地

文章浏览阅读2.2k次,点赞2次,收藏6次。mysql修改表名,列名,列类型,添加表列,删除表列alter table test rename test1; --修改表名alter table test add column name varchar(10); --添加表列alter table test drop column name; --删除表列alter table test modify ad..._增加列的命令是? alter table 表名 rename 表名 alter table 表名 modify 列名 数

CSS从入门到精通——文本与字体样式1.0_设置 h1, h2 的font-family 为: pingfang sc, verdana, he-程序员宅基地

文章浏览阅读2.2k次,点赞2次,收藏7次。1.字体颜色、类型与大小任务描述相关知识字体颜色color字体类型font-family字体系列字体栈字体大小font-size设置方式常用单位像素em百分比结合 em任务描述请在右侧的编辑框中修改style.css文件。 设置 h1, h2 的font-family 为:PingFang SC, Verdana, Helvetica Neue,Microsoft Yahei, Hiragino Sans GB, Microsoft Sans Serif,WenQuanYi Micro Hei,_设置 h1, h2 的font-family 为: pingfang sc, verdana, helvetica neue, microsof