通过 Kotlin Coroutine Flow 压缩网络请求

2024-02-24

我有一个通过 RxJava 压缩两个网络请求的代码:

Single.zip(repository.requestDate(), repository.requestTime()) {
  date, time -> Result(date, time)
}

代表着repository.requestDate()/repository.requestTime()回报Single<T>

如果我想使用协程,我需要将请求更改为:

@GET('link/date')
suspend fun requestDate() : Date

@GET('link/time')
suspend fun requestTime() : Time

But, 如何通过 Flow 从 Kotlin 协程压缩请求?

我知道我可以这样做:

coroutineScope {
   val date = repository.requestDate()
   val time = repository.requestTime()
   Result(date, time)
}

但我想通过 Flow 来做到这一点!

我了解频道,但是Channels.zip()已弃用。


val dateFlow = flowOf(repository.requestDate())
val timeFlow = flowOf(repository.requestTime())
val zippedFlow = dateFlow.zip(timeFlow) { date, time -> Result(date, time) }

https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.flow/zip.html https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.flow/zip.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 Kotlin Coroutine Flow 压缩网络请求 的相关文章

  • 如何获取之前的碎片?

    为了在我的应用程序中重用某些片段 我需要知道哪个片段是返回堆栈上的第二个片段 为了做到这一点 我正在使用getFragmentManager getFragments 显示以下错误 但有效 FragmentManager getFragme
  • Android 在打开应用程序时会广播吗?

    例如 如果我想知道Youtube何时打开 是否有与之相关的广播 我当然知道我可以轮询 logcat 消息来检查活动 但我可以通过广播来做到这一点吗 因为它会少得多的耗电 此链接似乎表明这是不可能的 如何跟踪 Android 中的应用程序使用
  • FTS3 在 ORMLite 中搜索?

    我对 FTS3 一无所知 除了http developer android com guide topics search search dialog html http developer android com guide topics
  • Android 上的 SVG 支持

    Android 支持 SVG 吗 有什么例子吗 最完整的答案是这样的 Android 2 x 默认浏览器本身不支持 SVG Android 3 默认浏览器支持 SVG 要将 SVG 支持添加到 2 x 版本的平台 您有两个基本选择 安装功能
  • 自定义选择器活动:SecurityException UID n 无权 content:// uri

    我正在构建一个选择器应用程序来替换本机 Android 共享对话框 它工作正常 除非我尝试通过长按图像 gt 共享图像从 Chrome 共享图像 我发现 Google 没有捕获异常 它崩溃了 所以我可以通过 Logcat 查看它 在 Goo
  • Android 如何更改 OnTouchListener 上的按钮背景

    你好 我在 xml 中有一个按钮 我正在使用OnTouchListener在我的活动中获得button按下并释放 但问题是 当我按下按钮时背景颜色没有改变 当我延长可能的活动时OnClickListener背景正在改变 任何人都可以告诉我的
  • 调试:在 Android 1.0 中找不到文件

    今天我更新到 Android Studio v 1 0 在尝试编译任何项目时出现以下错误 app build intermediates classes debug 找不到文件 问题是在更新之前我没有任何问题 这是我实际尝试编译的代码 构建
  • 如何在React Native Android中获取响应头?

    您好 我想在获取 POST 请求后获取响应标头 我尝试调试看看里面有什么response with console log response 我可以从以下位置获取响应机构responseData但我不知道如何获取标题 我想同时获得标题和正文
  • Android在排序列表时忽略大小写

    我有一个名为路径的列表 我目前正在使用以下代码对字符串进行排序 java util Collections sort path 这工作正常 它对我的 列表进行排序 但是它以不同的方式处理第一个字母的情况 即它用大写字母对列表进行排序 然后用
  • 如何为发布而不是调试创建密钥库?扑

    我按照使用此网站部署 flutter 的步骤进行操作https flutter io android release https flutter io android release 当我运行 flutter build apk 时出现此错
  • 如何在android中设置权限WRITE_SECURE_SETTINGS? [复制]

    这个问题在这里已经有答案了 我正在尝试启用 4 0 以上的辅助功能服务设置 但它显示异常 即 引起原因 java lang SecurityException 权限拒绝 写入安全设置需要 android permission WRITE S
  • Android Studio:未找到 Gradle DSL 方法:“classpath()”

    首先 我已阅读所有其他解决方案帖子以及有关迁移到 1 0 的官方文档 到目前为止 还没有任何效果 Error Error 23 0 Gradle DSL method not found classpath Possible causes
  • Android:滚动 Horizo​​ntalScrollView 时如何禁用 ScrollView 的垂直滚动?

    我正在开发一个带有带有 ScrollView 的 Activity 的 Android 应用程序 其中包含 Horizo ntalScrollView 等内容 当我触摸 Horizo ntalScrollView 时 我想禁用外部 Scro
  • PhoneStateListener 不调用

    这是我的完整代码 广播示例 java package com example broadcast gt import android app Activity import gt android content Context import
  • react-native run-android 失败并出现错误:任务 ':app:dexDebug' 执行失败

    我使用的是 Windows 8 1 和react native cli 1 0 0 and react native 0 31 0 添加后react native maps对于该项目 我运行了命令react native upgrade并给
  • Android:RecyclerView 不显示片段中的列表项

    有人可以帮我尝试让我的 RecyclerView 出现吗 如果我不在片段中实现它 就会出现这种情况 然而 当我尝试将其实现到片段中时 CarFront 中的其他 XML 代码与 RecyclerView 分开显示 我的日志中收到此错误 E
  • Android:AsyncTask ProgressDialog 将不会在 ActivityGroup 中打开

    我试图在轮询我的服务器时打开一个进度对话框 该类是一个 ActivityGroup 因为它嵌套在选项卡栏中 为了将视图保持在框架内 需要 ActivityGroup 这是我的 ActivityGroup 类的声明 public class
  • Android 中带有组的列表视图

    我有一个列表视图 每行都有一些日期和文本 我可以像 iPhone 中那样将这个 listView 分组 组之间有标题吗 在 android 中是否可能 请帮忙 即 我需要在 Listview 行之间有标题栏 以便如果我使用日期对其进行分组
  • 如何在片段中实现 onBackPressed() 和意图?

    我知道 onBackPressed 是活动中的一种方法 但是 我想在片段中使用该功能 以便当按下后退按钮时 它会通过 Intent 重定向到另一个活动 有什么办法解决这个问题吗 public class News Events fragme
  • Android 材料芯片组件崩溃应用程序。无法膨胀 xml

    Tried Chip来自两个支持库的组件 com google android support design 28 0 0 rc01和材料 com google android material material 1 0 0 rc01 堆栈

随机推荐

  • Haskell 中类似 OO 的接口实现

    尽管有这个标题 我不会仅仅询问 OO 世界和 Haskell 之间的翻译 但我想不出更好的标题 此讨论类似于但不等于this one https stackoverflow com questions 5474171 oo interfac
  • 按位运算如何提高 Asm.js 的性能?

    在 Asm js 定义的第一行有一个基于 Asm js 的代码示例 它解释了按位运算有助于获得更快的 JS 代码 HEAP32 p gt gt 2 0 or x y 0 我的问题是 这个操作如何提高性能 在 Asm js 或 Emscrip
  • Drools 知识库 已弃用

    我正在将 Drools 规则引擎集成到我的应用程序中 我发现的 99 的入门示例如下 KnowledgeBuilder kbuilder KnowledgeBuilderFactory newKnowledgeBuilder kbuilde
  • 如何验证 WTForms 中的日期字段

    在我的 Flask 应用程序中 我有一个 WTForm 其中有两个日期选择器 分别用于 开始日期 和 结束日期 验证 结束日期 不早于 开始日期 的最佳方法是什么 from flask wtf import FlaskForm from w
  • .NET 自定义事件组织帮助

    作为 C 的新手 我最近一直在研究自定义事件 虽然我认为我现在了解设置自定义事件所需的基本部分 但我无法确定where每件作品都属于 具体来说 这就是我正在尝试做的事情 我有一个表示内部数据结构布局的树控件 当数据在树中重新排列 通过拖放
  • 傅立叶级数数据与 numpy 的拟合:fft 与编码

    假设我有一些数据 y 我想对其进行傅立叶级数拟合 对此post https stackoverflow com questions 4258106 how to calculate a fourier series in numpy 解决方
  • HttpClient 不从 CookieContainer 发送 cookie

    我正在使用 Visual Studio 2012 开发带有 WPF NET 4 0 客户端的 ASP WebAPI ASP MVC 4 应用程序 客户端需要登录到服务器 我使用带有身份验证 cookie 的 FormsAuthenticat
  • MS Access 子表单在表单视图中带有#Error 字段

    微软访问 2003 我在子表单后面有一个查询 其中有如下 sql 语句 SELECT ClientTotalInvoiceLineItems CDate GetWeekEnding WeekEnding1 WeekEnding2 WeekE
  • 使用内容配置作为文件名下载 Node.js 文件

    我正在使用 Request 模块下载文件 但是当文件名必须来自 Content Disposition 标头时 我不太确定如何将响应传输到输出流 所以基本上 我需要读取响应直到找到标头 然后将其余部分通过管道传输到该文件名 这些示例显示如下
  • 检查残差并可视化零膨胀泊松 r

    我正在为 CPUE 数据运行零膨胀模型 该数据有零通货膨胀的证据 我已通过 Vuong 测试 在下面的代码中 确认了这一点 根据 AIC 的说法 完整模型 zint 优于零模型 我现在想要 检查完整模型的残差以确定模型拟合 由于缺乏来自同事
  • Javascript 设置按钮处于活动状态

    我有一个按钮表 一旦填充完毕 我就会使用 document getElementById btn0 click 单击第一个按钮 该按钮正在执行其应该执行的操作 但是按钮的背景颜色并没有像我手动单击它时那样改变 正如您所看到的 当它运行时 d
  • Rails 这个查询是否对 sql 注入开放?

    我仍在学习如何使用 ActiveRecord 编写良好的查询 我很好奇这个查询是否会受到 sql 注入的影响 因为我在查询中使用日期字段的方式 有人可以指出任何明显的错误或任何更好的方法来编写这个查询吗 arrangements for m
  • MEAN.js 社交共享?

    因此 我使用 MEAN js 构建了一个应用程序 并对文章 博客 部分进行了一些更新 以实现更好的 SEO 可读性 设计等 不过 我似乎无法弄清楚的一个问题是如何共享使用 Facebook Google Twitter 等的文章 并让它们使
  • (#5) Heroku Rails APP 上出现未经授权的源 IP 地址错误

    当有人尝试通过 Facebook 登录时 我的 Heroku 应用程序 FoR 开始抛出此错误 5 Unauthorized source IP address 发生这种情况是因为我的 Heroku 机器 与其他应用程序共享 的 IP 地址
  • Silverlight 4.0 + MVC 2.0 + WCF RIA 服务 + EF 4.0 = 加载错误

    我正在尝试建立一个具有以下内容的网站 VS 2010 用于更新的 WCF RIA 服务 Silverlight 4 0 与 WCF RIA 服务打包在一起 MVC 2 EF 4 0 我将其设置为面向公众的页面将是来自 MVC 的 html
  • 配置 Microsoft Azure Web App 的远程 IIS 管理后找不到 Microsoft.Web.Configuration.AppHostFileProvider

    几个月前 我可以成功地为我的 Azure Web 应用程序配置远程 IIS 管理 更换办公室后 我发现在新计算机上配置远程 IIS 管理后 当我尝试单击我的网站时遇到以下错误 我使用 Internet 信息服务 版本 10 0 16299
  • 写入终端和文件 C++

    我发现这个问题适用于 Python Java Linux 脚本 但不适用于 C 我想将 C 程序的所有输出写入终端和输出文件 使用这样的东西 int main freopen myfile txt w stdout cout lt lt L
  • 如何在 HTML 中的 Image-Click 上播放声音?

    当我单击或将鼠标悬停在播放按钮上时 我尝试播放声音吗 这是我到目前为止所拥有的 我有一个按钮 如果我将鼠标悬停在它上面 它会更改图像 现在我还希望它播放 mp3 play a position relative float left wid
  • 请求遵循重定向而不发送数据

    我在用着请求 js https github com request request用于 Node js 中的 http 请求 request method POST uri http www example com getData fol
  • 通过 Kotlin Coroutine Flow 压缩网络请求

    我有一个通过 RxJava 压缩两个网络请求的代码 Single zip repository requestDate repository requestTime date time gt Result date time 代表着repo