本文涉及的源码版本如下: com.android.support:appcompat-v7:27.1.1 android.arch.lifecycle:extensions:1.1.1 android.arch.lifecycle:viewmodel:1.1.1 android.arch.lifecycle:livedata:1.1.1 什么是ViewModel, 以及工作原理 ViewModel用于存储和管理UI相关的数据,ViewModel有自己生命周期,会根据fragment,activi…
带你领略Android Jetpack组件的魅力 Android新框架jetpack的内容讲解:Room.WorkManager.LifeCycles.LiveData.ViewModel.DataBinding等 Google在2018 Google I/O 2018大会上发布了新的框架组件,大致如上图所示.Android Jetpack 能帮助您加快应用开发速度,处理类似后台任务.UI 导航以及生命周期管理之类的活动,免去开发者编写样板代码的麻烦,专注提升应用体验.包括这几部分:Archit…
Android Jetpack 组件是库的集合,这些库是为了协同工作而构建的,不过也可以单独采用,接下来会一一详细地学习这些库, 下面源码版本是com.android.support:appcompat-v7:28.0.0, 以及库android.arch.lifecycle:extensions:1.1.1 Lifecycles库是拿来干什么的 这个库从系统框架层去管理具有生命周期的组件,例如activity, fragment.让开发更方便地去管理自己应用里需要和activity或者frag…
概述 ViewModel,从字面上理解的话,它肯定是跟视图(View)以及数据(Model)相关的.正像它字面意思一样,它是负责准备和管理和UI组件(Fragment/Activity)相关的数据类,也就是说ViewModel是用来管理UI相关的数据的,同时ViewModel还可以用来负责UI组件间的通信. 之前存在的问题 ViewModel用来存储和管理UI相关的数据,可于将一个Activity或Fragment组件相关的数据逻辑抽象出来,并能适配组件的生命周期,如当屏幕旋转Activity重…
CameraX 又是一个 Google 推出的 JetPack 组件 ,是一个新鲜玩意儿,故给大家分享下我在项目中的使用过程心得.. CameraX 是什么? Google 开发者文档 对 CameraX 的评价如下: CameraX是一个Jetpack支持库,旨在帮助您简化相机应用程序的开发工作.它提供一致且易于使用的API接口,适用于大多数Android设备,可以向后兼容至Android 5.0(API等级21). 虽然它利用的是camera2的功能,但使用的是更为简单且基于用例的方法,该方…
转自带你领略Android Jetpack组件的魅力 Android Jetpack 对于任何一个产品来说,我们开发中都会面对哪些问题?如:产品交互.用户体验.代码结构.数据获取.数据存储.网络优化.任务调度等等,虽然在现在的阶段这些问题已经有了很好的解决和优化,也有很多大神的开源组件方便开发者去使用,Android Jetpack就是Google给出的一个官方的处理方法(当然知识处理其中基本问题),Android Jetpack组件的优势: 轻松管理应用程序的生命周期 构建可观察的数据对象,以…
1.Jetpack主要特性有以下三点: 1.加速开发组件可单独使用,也可以协同工作,当使用kotlin语言特性时,可以提高效率. 2.消除样板代码Android Jetpack可管理繁琐的Activity(如后台任务.导航和生命周期管理). 3.构建高质量的强大应用Android Jetpack组件围绕现代化设计实践构建而成,具有向后兼容性,可以减少崩溃和内存泄漏. 2.Jetpack的分类. DataBinding:以声明方式将可观察数据绑定到界面元素,通常和ViewModel配合使用.Lif…
前言 2018年谷歌I/O,Jetpack横空出世,官方介绍如下: Jetpack 是一套库.工具和指南,可帮助开发者更轻松地编写优质应用.这些组件可帮助您遵循最佳做法.让您摆脱编写样板代码的工作并简化复杂任务,以便您将精力集中放在所需的代码上. 好好琢磨这段介绍就能解释我们刚才的问题. Jetpack到底是什么? 是一套库.工具和指南.说白了就是一系列的库或者工具集合,而且这些工具是作为我们优质应用的指南,相当于官方推荐做法. google推出这个系列的原因是什么? 规范开发者更快更好的开发出…
Android Jetpack Overview Android Jetpack Jetpack is a set of libraries, tools and architectural guidance to help make it quick and easy to build great Android apps. It provides common infrastructure code so you can focus on what makes your app unique…
Android Jetpack Navigation基本使用 本篇主要介绍一下 Android Jetpack 组件 Navigation 导航组件的 基本使用 当看到 Navigation单词的时候 应该就大概知道 这是一个关于导航用的,下面我来简单介绍一下 如何使用Navigation组件的基本使用流程,并且一步步 实际操作一番 Navigation ,下图是案例,实现登录到详情的跳转 1.Navigation 基本概念 Navigation 是一个Jetpack组件 支持用户导航,用于在…