前言
今年七月底,Google 正式发布了 Jetpack Compose 的 1.0 稳定版本,这说明Google认为Compose已经可以用于生产环境了。相信Compose的广泛应用就在不远的将来,现在应该是学习Compose的一个比较好的时机
在了解了Compose的基本知识与原理之后,通过一个完整的项目继续学习Compose应该是一个比较好的方式。 本文主要基于Compose,MVI架构,单Activity架构等,快速实现一个wanAndroid客户端,如果对您有所帮助可以点个Star: wanAndroid-compose
效果图
首先看下效果图
![]() |
![]() |
|---|---|
![]() |
![]() |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
![]() |
![]() |
主要实现介绍
各个页面的具体实现可以查看源码,这里主要介绍一些主要的实现与原理
使用MVI架构
MVI 与 MVVM 很相似,其借鉴了前端框架的思想,更加强调数据的单向流动和唯一数据源,架构图如下所示

其主要分为以下几部分
Model: 与MVVM中的Model不同的是,MVI的Model主要指UI状态(State)。例如页面加载状态、控件位置等都是一种UI状态View: 与其他MVX中的View一致,可能是一个Activity或者任意UI承载单元。MVI中的View

本文介绍了如何使用Jetpack Compose结合MVI架构和Navigation库,快速实现wanAndroid客户端。内容包括:MVI架构的解释、单Activity架构的优缺点与解决策略、页面状态保存及生命周期管理。文中还探讨了Compose中副作用的处理和避免滚动位置丢失的方法。






最低0.47元/天 解锁文章
767

被折叠的 条评论
为什么被折叠?



