当前位置: 首页 > article >正文

LiveData 迁移到 Kotlin Flow详解

LiveData ,是Android 2017推出的一个东西,配合MVVM使用。观察者模式,的确简化了我们的工作方式,但 RxJava 等选项,对于当时的初学者来说实在是太复杂了。因此 Architecture Components 团队创建了 LiveData :这是个非常 “有主见的” 可观察数据持有者类,并且是专门为 Android 设计的。它保持简单明了,这让它易于上手,建议是将 RxJava 用于更复杂的 响应流 案例,以充分利用这两者之间的整合。

一、死数据

LiveData 仍然是我们 针对 Java 开发人员、初学者和简单情况的解决方案。对于其余部分,一个不错的选择是迁移到 Kotlin Flows。Flows 仍然有一个陡峭的学习曲线,但它们是 Kotlin 语言的一部分,由 Jetbrains 提供支持;Compose 即将到来(已到来),它非常适合响应式模型。

一段时间以来,我们一直在讨论使用 Flows 连接 app 的不同部分,但 view 和 ViewModel 除外。现在我们有了更安全的方法从 Android UI 收集 flows,我们可以创建一个完整的迁移指南。

在这篇文章中,您将学习如何将 Flows 暴露给view、如何收集它们,以及如何对其进行微调,以满足特定需求。

二、Flow

支持布局动态化和逻辑动态化开源社区活跃LiveData 做了一件很漂亮的事儿:它 公开数据,同时缓存最新值,并知晓 Android 的生命周期。后来我们了解到它也可以 启动协程,并 创建复杂的转换,但这就有点复杂了。

让我们看一些 LiveData 模式及其 Flow 等效


http://www.kler.cn/a/231108.html

相关文章:

  • 红队打靶练习:HEALTHCARE: 1
  • K8s环境下rook-v1.13.3部署Ceph-v18.2.1集群
  • 李宏毅LLM——大模型+大资料的神奇力量
  • 一篇文章了解Python中的对象(狠狠爱住)
  • CSS太极动态图
  • 2024-02-07(Sqoop,Flume)
  • 02-OpenFeign-微服务接入
  • 麒麟信安连续两年获评信创工委会“卓越贡献成员单位”荣誉称号
  • Android开发--实时监测系统+部署故障诊断算法
  • 基于YOLOv8的暗光低光环境下(ExDark数据集)检测,加入多种优化方式---DCNv4结合SPPF ,助力自动驾驶(一)
  • 【C语言】三子棋游戏实现代码
  • 【翻译】 Processing的安卓项目构建(译者用的是Android Studio)
  • 蓝桥杯(Web大学组)2022国赛真题:新鲜的蔬菜
  • 使用Python构建简单的任务调度器
  • 83 CTF夺旗-Python考点SSTI反序列化字符串
  • 【从0上手Cornerstone3D】如何使用CornerstoneTools中的工具之工具介绍
  • 网易腾讯面试题精选----90道设计模式面试题及答案
  • C++面向对象编程:explicit关键字
  • seatunnel数据集成(一)简介与安装
  • 相机图像质量研究(4)常见问题总结:光学结构对成像的影响--焦距