当前位置: 首页 > news >正文

第三部分 — 服务工作者(后台)服务工作者生命周期及注意事项(从 MV2 迁移到 MV3)

目的

了解 MV3 中扩展服务工作者(SW)的启动/停止与重启特性,哪些行为不应被当作保证,并掌握让扩展在挂起/重启下仍保持正确性的模式。

使用场景 / 避免使用场景

使用场景: 当后台逻辑出现与生命周期相关的不稳定表现、状态丢失,或从 MV2 迁移到 MV3 后消息处理间歇性无响应时。 避免使用场景: 当你只需要特定的 API 参考(跳转到相关的 API 章节)。请参考官方文档以获得边缘情况下的生命周期保证。

6.1 MV3 服务工作者简介

是什么: 你的扩展程序后台逻辑运行在 服务工作者(SW) 中(事件驱动;可能在空闲时被关闭,并可按需重新启动)。

与 MV2 的不同之处:

  • MV2 背景页面可以保持持久状态。

  • MV3 服务工作者 不 具有此特性。

  • 系统全局状态在重启后是 不可靠的。

  • 计时器可能会被限制;长时间运行的工作必须重新设计。

关闭现实(文档):

  • 通常在约 30 秒的空闲时间后可能被关闭(非保证) (事件和扩展程序 API 调用会重置空闲计时器)

  • 如果单个事件或 API 调用耗时过长(例如 > 约 5 分钟),可能会被终止

  • 如果 fetch() 响应耗时过长(例如 > 约 30 秒),可能会被终止

设计规则(以手机优先): 应假设服务工作者(SW)在空闲时可能被关闭,且可能无通知。

6.2 生命周期:安装/激活、启动和事件处理器

最小的 manifest.json 片段(概念性描述):

{ "manifest_version": 3, "name": "Example", "version": "1.0.0", "background": { "service_worker": "sw.js", "type": "module" } }

Minimal sw.js:“`js // sw.js (service worker) chrome.runtime.onInstalled.addListener(async (details) => { // Do lightweight one-time initialization. // Avoid long blocking work here. });

chrome.runtime.onStartup.addListener(() => { // Fires when a user profile starts. // Use as an optimization/hook, not as a guarantee for initialization. });

**坑点:** - 不要假设 `onInstalled`

http://www.jsqmd.com/news/450361/

相关文章:

  • Python之TypeVar深入解析
  • 一文搞懂:缓存三大问题(击穿、穿透、雪崩)原理及全套解决方案
  • 你的电视 2.3.8 | 空壳直播软件,支持多个线路,附直播源
  • SpringBoot实战:高效实现API限流策略
  • 基于Java+SSM+Flask疫情防控管理系统(源码+LW+调试文档+讲解等)/疫情防控/管理系统/防疫管控/公共卫生/健康管理/疫情监测/疾病控制/病毒防范/流行病学/疫情报告/健康监测/疫区管理
  • 2026年河北抖音短视频代运营5强推荐榜单发布 - 精选优质企业推荐榜
  • AI 数学的秘密花园:09.多头注意力是什么?(一群专家分工合作,竞争又抱团)
  • 复杂 Agent 系统的 10 个核心设计模式(源码级)
  • Harmonyos应用实例十七:找规律——图形与数列规律
  • Swoole的利弊的核心概念的庖丁解牛
  • nodejs vue3农产品网上商城系统 半亩菜园线上预售系统
  • Dify 助力企业级 AI Agents 开发:2026 最新真实案例深度解析与实战指南
  • C#上位机PLC通信全栈实战:西门子/三菱/欧姆龙/汇川全品牌通用框架,一次开发终身复用
  • HarmonyOS APP开发:从理论到实践
  • 【2026年最新600套毕设项目分享】基于BS的企业财务管理信息系统(14071)
  • 每天了解几个MCP SERVER:让 AI 能够获取股票、加密货币等市场数据Alpaca
  • GUI学习——day3
  • 基于vue+nodejs的大学生实习招聘系统
  • vue基于nodejs的电子外设销售商城系统
  • 工程设计类学习(DAY13):SMT红胶制程:电子制造的工艺奥秘
  • 动环监控的优势是什么?它如何助力机房运维管理的智能化升级?
  • 科研党收藏!巅峰之作的降AIGC平台 —— 千笔·专业降AIGC智能体
  • 浏览器内浏览器钓鱼攻击的演进机制与防御策略研究——基于Facebook BitB案例的实证分析
  • 2026年江西抖音短视频代运营5强推荐榜单发布 - 精选优质企业推荐榜
  • [特殊字符] 免费!用 Windows11+飞书+Qwen网页版,10分钟搭建你的 OpenClaw 小龙虾智能体
  • VLA 动作序列生成深度解析
  • 实测才敢推 9个降AI率平台测评对比,专科生必看的降AI率神器
  • 2026年湖南抖音短视频代运营公司排行榜TOP5公布 - 精选优质企业推荐榜
  • 完整、结构化的复杂 Agent 系统模板
  • Python+ai技术的微信小程序 同城社区蔬菜配送 骑手抢单 商家