首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android Jetpack系列 之分页库Paging3(一)

    前言 许久没有更新Jetpack系列的文章了,本篇文章为大家分享分页库Paging3的使用,如果你还没有看过我Jetpack其他的文章,可以移步至链接: Android JetPack系列文章 ,持续更新中...Paging是什么 想想我们之前的业务中,实现分页加载需要怎么处理?...而Paging3是Paging库当前的最新版本,仍处于测试版本,相比较于Paging2的使用就简洁多了。...return try { netWork.getData(pageId) } catch (e: Exception) { //在这里处理或捕获异常...当然在实际开发中,上面的代码会有很多问题,以及Paging为我们提供了更多且有用的功能,我们将在下一篇中继续为大家分享~ Android Jetpack系列 之分页库Paging3(二)~敬请期待

    4.1K30

    Google 推荐在 MVVM 架构中使用 Kotlin Flow

    + MVVM 实战应用,和神奇宝贝(PokemonGo) 有很多不同之处,神奇宝贝(PokemonGo) 主要偏向于 Paging3 的分页处理,以及 Flow 在 MVVM 中的实战。...在 Google 发布的 Jetpack 的最新成员 Paging3,在其内部的源码实现也是使用的 Flow,关于 Paging3 的使用可以参考以下链接: Jetpack 成员 Paging3 实践以及源码分析...(一)(https://juejin.im/post/6844904193468137486) Jetpack 新成员 Paging3 网络实践及原理分析(二)(https://juejin.im/post...Kotlin Flow 在 ViewModel 中的使用 在 ViewModel 中使用 Flow 之前在 Jetpack 成员 Paging3 实践以及源码分析(一) 文章也有提到, 这里我们在深入分析一下...如何处理 ViewModel 的三种方式 如果不使用数据绑定,在 Activity 或者 Fragment 中如何处理 ViewModel 的三种方式。

    4.4K21

    Jetpack新成员,Paging3从吐槽到真香

    随着Android 11的正式发布,Jetpack家族也引入了许多新的成员。我之前有承诺过,对于新引入的App Startup、Hilt、Paging 3,我会分别写一篇文章进行介绍。...另外,由于Paging 3是Google基于Kotlin协程全新重写的一个库,所以它主要是应用于Kotlin语言(Java也能用,但是会更加复杂),并且以后这样的库会越来越多,比如Jetpack Compose...如果你对于Kotlin还不太了解的话,可以去参考我的新书《第一行代码 Android 第3版》。...我们只需要按照Paging 3搭建好的框架去编写逻辑实现,告诉Paging 3如何去加载数据,其他的事情Paging 3都会帮我们自动完成。...最后,如果你需要获取Paging3Sample项目的源码,请访问以下地址: https://github.com/guolindev/Paging3Sample 另外,如果想要学习Kotlin和最新的Android

    2.5K20

    【Kotlin】Kotlin 与 Java 互操作 ③ ( Kotlin 中处理 Java 异常 | Java 中处理 Kotlin 异常 | @Throws 注解处理异常 | 函数类型互相操作 )

    文章目录 一、Kotlin 中处理 Java 异常 1、Java 中异常操作 2、Kotlin 中调用 Java 抛出异常函数 3、分析 Kotlin 字节码信息 4、Kotlin 中捕获异常 二、...Java 中处理 Kotlin 异常 1、Kotlin 方法中抛出异常处理 2、Java 中调用 Kotlin 异常方法 3、使用 @Throws 注解注明异常 三、Kotlin 与 Java 之间的函数类型互操作...1、Java 调用 Kotlin 中的 匿名函数解决方案 2、Kotlin 中 匿名函数代码示例 3、Java 中 调用 Kotlin 匿名函数代码示例 一、Kotlin 中处理 Java 异常 -...Kotlin 异常 ---- 1、Kotlin 方法中抛出异常处理 在 Kotlin 的 函数 中 , 抛出异常 ; 如果 在 Kotlin 中 调用 抛出异常 的 Kotlin 函数 , 直接使用...使用 @Throws 注解注明异常 如果 要在 Java 中处理 Kotlin 抛出的异常 , 那么 在 Kotlin 抛出异常的函数 , 必须使用 @Throws 注解注明异常 ; 在 @Throws

    1.2K10

    Jetpack 系列之Paging3,看这一篇就够了~

    前言 许久没有更新Jetpack系列的文章了,本篇文章为大家分享分页库Paging3的使用,如果你还没有看过我Jetpack其他的文章,可以移步至链接: Android JetPack系列文章 ,持续更新中...而Paging3是Paging库当前的最新版本,仍处于测试版本,相比较于Paging2的使用就简洁多了。...Paging在架构中的使用图 通过上图我们也可以清晰的看出来,Paging在仓库层、ViewModel和UI层都有具体的表现,接下来我们通过一个示例来逐步讲解Paging是如何在项目架构中工作的。...return try { netWork.getData(pageId) } catch (e: Exception) { //在这里处理或捕获异常...除此之外,Paging3中还有一个比较重要的RemoteMediator,用来更好的加载网络数据库和本地数据库,我们后续有机会再为大家单独分享吧~ 2020年11月21日更新 paging3的设计理念是不建议对列表数据直接修改

    2K20

    一起看 IO | Jetpack 组件的新特性

    Room 2.4 还内建了对枚举和 RxJava3 的支持,同时也全面支持 Kotlin 1.6。 我们从 Room 2.5 开始使用 Kotlin 对整个库进行重写。...Paging 3.1 为 Rx 和 Guava 集成提供了稳定支持,从而为 Paging 原生使用的 Kotlin 协程提供了 Java 版的替代方案。...此版本还通过新的返回类型 LoadResult.Invalid 表示无效或过期的数据,从而改进了对无效竞争条件的处理。...如需了解有关 Paging 3 的更多信息,请参阅 Android 开发者网站中全新简化版的教程: Paging Basics Codelab,它描述了如何在包含列表的应用中集成 Paging 库。...Room WorkManager 查看 项目主页 可获得更多内容,包括我们如何处理拉取请求,以及如何开始使用 Jetpack 构建应用。

    3.2K20

    Jetpack 系列之Paging3,看这一篇就够了~

    前言 许久没有更新Jetpack系列的文章了,本篇文章为大家分享分页库Paging3的使用,如果你还没有看过我Jetpack其他的文章,可以移步至链接: Android JetPack系列文章 ,持续更新中...而Paging3是Paging库当前的最新版本,仍处于测试版本,相比较于Paging2的使用就简洁多了。...通过上图我们也可以清晰的看出来,Paging在仓库层、ViewModel和UI层都有具体的表现,接下来我们通过一个示例来逐步讲解Paging是如何在项目架构中工作的。...return try { netWork.getData(pageId) } catch (e: Exception) { //在这里处理或捕获异常...除此之外,Paging3中还有一个比较重要的RemoteMediator,用来更好的加载网络数据库和本地数据库,我们后续有机会再为大家单独分享吧~ 2020年11月21日更新 paging3的设计理念是不建议对列表数据直接修改

    3.5K10

    用Kotlin的方式来处理网络异常

    前言 之前的文章 RxJava处理业务异常的几种方式 曾经介绍过 Retrofit 的异常可以有多种处理方式。 其中,可以使用 RxJava 的错误处理操作符,它们是专门用来处理异常的。...使用 Kotlin 的特性 这次我结合 Kotlin 扩展函数的特性来尝试处理异常。...* @author: Tony Shen * @date: 2018-07-19 17:31 * @version V1.0 */ /** * 尝试重试 * 默认有3次重试机会...,每次的延迟时间是1000ms */ fun Maybe.retryWithDelayMillis(maxRetries: Int=3, retryDelayMillis: Int=1000...它的 action 参数传递的是一个函数,专门用于处理异常。每一个网络请求的异常处理并不会都一样,可以用该函数来传递不同的异常处理。 总结 合理利用 Kotlin 的扩展函数,可以编写优雅的代码。

    55120
    领券