Jetpack
文章平均质量分 96
RikkaTheWorld
一个OTAKU
展开
-
Android MVI 架构学习
这些年来,Android 上发展了多种主流架构,从最开始的MVC,到Clean和MVP,再到现在最火热的MVVM,可以说架构发展一直很卷,这不,MVVM还没有用个几年呢,MVI就出来了。要说 Android 架构卷,实则不然,上面说的这些架构其实根本不是来自 Android 的,而是源自于Web,即大前端, Web 由于其自身特性(还不算完全成熟,业务多且杂,热部署等),版本迭代速度巨快,技术的更新迭代也因此很快,上面这些架构最早就是在前端所应用和发展出来的, 而移动端则是直接抄来,跟着Web的步伐前进。.原创 2022-08-29 20:23:38 · 3013 阅读 · 3 评论 -
Jetpack Compose 的 Navigation学习
Navigation是 Jetpack 用于 Android 导航的组件,作用是处理页面跳转,以及页面跳转过程中的交互。使用Navigation,你就需要为每个页面设定一条唯一路径,它是一个 String 常量,形式是 DeepLink 的样子,从一个页面跳转到另一个页面,它通过输入目的地的路径进行转跳。Navigation也支持上 Compose,我们可以在 Compose 中使用它来进行跳转。因为官网和所看到的demo都是把它作为跳转能力使用,所以不清楚 Compose 是否还有别的跳转方式….....原创 2022-08-06 13:03:35 · 1620 阅读 · 0 评论 -
Jetpack Compose 中的状态管理
Compose是用声明式来描述UI,注解所修饰的函数必须是一个没有返回值的纯函数,就算有副作用也是可控的,副作用的管理有Effect,之后再去了解。函数式编程和状态机是矛盾的、冲突的。Text(text="$id")//展示文案的TextViewTextButton(onClick={id++////每次点击Button都对id加1这里要如何改变上面Text的文案??????}){Text(text="点击我对id加1")}}$id因为。...原创 2022-07-31 20:29:27 · 880 阅读 · 0 评论 -
Jetpack学习之 ViewModel
生命周期组件三巨头 Lifecycle、 LiveData、 ViewModel,他们都是很好的搭档,基本都是组合使用。目录1. 概述1.1 历史1.2 ViewModel的作用2. 使用2.1 自定义 ViewModel参考文章1. 概述1.1 历史在 ViewModel 之前, Google就推出了 MVVM 架构,在2015年时,就为该架构提供了支持库 DataBinding, 但是它的推行并不顺利,它起初排查问题较难,被许多开发者诟病。虽然发展至今,已经迭代到一个很完善的版本,但是使用量依原创 2021-03-17 11:39:37 · 258 阅读 · 1 评论 -
Jetpack学习之 LiveData
LiveData 是 Google 推荐的基于观察者的数据持有者,可以认为是一个轻量级的RxJava。一般来说不会单独使用,会和其他组件一起搭配,最常用的就是 ViewModel 了。目录1. 概述1.1 什么是LiveData1.2 为什么使用LiveData2. 使用2.1参考文章1. 概述1.1 什么是LiveData官方定义:LiveData 是一种可观察的数据存储器类。与常规的可观察类不同,LiveData具有生命周期感知能力,意指它遵循其他应用组件(如 Activity、Frag原创 2021-03-16 16:58:32 · 223 阅读 · 2 评论 -
Jetpack学习之 Lifecycle
Lifecycle 用于帮助开发者管理 Activity 和 Fragment 的生命周期,由于 Lifecycle 是 LiveData 和 ViewModel的基础, 所以要了解后面那两位,需要先学习 Lifecycle。目录1. 概述1.1 Lifecycle定义1.2 为什么使用Lifecycle2. 使用2.1 导入1. 概述1.1 Lifecycle定义Lifecycle 组件用来感知另外一个组件(Activity、Application、Fragment)的生命周期。1.2 为什么原创 2021-03-14 17:56:34 · 203 阅读 · 0 评论 -
Jetpack学习之 App Startup
1. 概述紧接着 Jetpack学习之 Hilt 来学习Jetpack另外一个新成员:App Startup。目前官方文档还没有翻译成中文,但勉强也能看,还有很多大神都发表了文章,毕竟是Jetpack家族,所以追新有保障。先来说下 App Startup的官方定义:App Startup提供了一种更加简单、高效的启动应用程序的组件。SDK开发和应用开发人员都可以使用这个组件来简化启动序列,并且设置初始化顺序。App Startup不用你在为每一个需要初始化的组件提供 Content Provide原创 2021-01-15 18:40:53 · 258 阅读 · 0 评论 -
Jetpack学习之 Hilt
目录1. 概述1.1 依赖注入(DI)概念1.2 为什么在代码中使用外部去注入依赖1.2.1 满足合理的架构设计1.2.2 满足一些数据共享场景1.3 Hilt是什么1.4 Hilt使用地方2. Hilt使用2.1 导入1.2 一个简单的例子2.3 接口依赖注入例子2.4 相同类型的依赖注入2.5 第三方依赖注入参考文章1. 概述随着Android 11 的发布,Jetpack家族新添了 Hilt 和 App Startup等成员。而 Hilt 是被定义为 依赖注入框架而被发布。什么?又是依赖注入框原创 2021-01-02 17:53:54 · 412 阅读 · 0 评论