You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

cordova-background-fetch在iOS应用关闭状态下是否能正常运行?

Service Worker fetch 事件触发场景解答

核心结论

fetch事件没有全场景下应用被杀死后仍可触发的能力,仅在应用进程未被系统回收的后台状态,以及部分平台应用关闭后的极短存活窗口期内可以触发。

分场景详细说明

  • 应用处于后台状态:只要系统未主动回收应用对应的Service Worker进程,fetch事件就可以正常触发,这属于W3C标准规定的常规可触发场景。
  • 应用被主动杀死/完全关闭状态:
    • 桌面端Chrome、Edge等主流浏览器:如果用户未手动禁用PWA的后台运行权限,应用关闭后Service Worker会保留最长5分钟的存活期,这段时间内fetch事件可被触发;到期后进程被回收,事件无法触发。
    • 移动端原生安卓系统:应用被杀死后Service Worker最多保留10分钟存活期,到期后无法触发事件;国产定制安卓ROM通常会在应用被划走杀死时立刻回收所有关联进程,不存在存活窗口期,fetch事件完全无法触发。
    • 移动端iOS系统:只要应用被用户手动杀死,系统会立刻终止所有关联的Service Worker进程,fetch事件100%无法触发。

补充说明

以上规则仅适用于W3C标准定义的Service Worker fetch 事件,如果你使用的是特定框架/插件自定义的fetch事件,触发逻辑以插件底层进程调度实现为准。

内容的提问来源于stack exchange,提问作者Nirmal Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 01:36:05