当另一个事件发生时,手动停止工作管理器

Stop Work Manager manually, when another event occurs

我正在尝试使用 Work Manager 在后台录制通话,我不确定通话结束时它是否能够停止录音,当它 returns 理想时。

如果我没理解错的话,你想启动一个 Worker 来记录通话并在你接到电话时启动?如果你必须这样做,我会使用 ListenableWorker 并且只在通话结束时完成它 returns 的 ListenableFuture

请记住,WorkManagerWorker 强加了 10 min 执行 window,因此这可能不太适合您想要执行的操作。例如,通话时间可能会超过 10 分钟。此外,通过将记录操作分配到 Executor 或通过 coroutines.

可以更好地模拟此类工作。