Jetpack 组件改进: UnPeek-LiveData V6 发行公测

2021-06-18 13:38:23 +08:00
 KunMinX

刚刚在 Maven-Central 提交了 UnPeek-LiveData V6 版设计,感谢贡献者对该设计的分享。

这一版的 UnPeek-LiveData 十分接近我理想中的 LiveData 设计,也即它分别提供 “粘性的” 和 “非粘性的” 设计,来分别满足 “可变的、可倒灌的 state”,和 “只读的、一次性的 event” 的场景需要。

该版本在 V5 版的基础上,通过引入代理类的设计,来规避反射方式访问基类数据结构的写法,使代码复杂度较上一版有所简化,感兴趣可自行查阅和在项目中引用。

https://github.com/KunMinX/UnPeek-LiveData

4101 次点击
所在节点    Android
5 条回复
KunMinX
2021-06-18 13:42:30 +08:00
我们对 LiveData 数据倒灌及其对策的探究始于 2019 年 7 月,历时两年,

在累积过足够多的场景样本,以及小伙伴们主动积极的测试、反馈、有效源码方案的分享,UnPeek-LiveData 得以不断演化,并完善至如今的模样,

再一次感谢小伙伴们实事求是的互动交流。
shily
2021-06-19 14:32:38 +08:00
https://xiaozhuanlan.com/topic/6719328450

>
> 最新的 Result API 如何?
>事实上,Result API 和 Bus 没有本质区别,应尽可能避免使用。
>

我觉得你对 LiveData 有误解,并且对 Result API 也有误解。
至少你的例子 “列表、详情、编辑 ” 是最正统的应该使用 Result API 这个方案的,页面间传递数据应该使用 argument + result,而不是 LiveData 一把梭,啥都用。
fromzero
2021-06-20 14:56:56 +08:00
解决这个问题很难吗...创建新名词 写文章 开 repo 。(但是我承认写的很好
yaocai321
2021-06-21 10:41:36 +08:00
@fromzero 同感+1, 看着一些词汇起鸡皮疙瘩.
zhanlanhuizhang
2021-06-24 09:36:48 +08:00
其实有些时候,需要使用数据倒灌

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/784229

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX