# 第4章 核心概念
> 📖 《Gemini-Voyager 从入门到精通》系列连载
---
## 4.1 内容脚本(Content Scripts)机制
内容脚本是浏览器扩展与网页交互的核心技术。Gemini-Voyager 的大部分功能都是通过内容脚本实现的。
### 浏览器扩展架构
```
┌─────────────────────────────────────────────────────────────────┐
│ 浏览器扩展架构 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ 后台脚本 (Background) │ │
│ │ • 处理浏览器事件 │ │
│ │ • 管理扩展状态 │ │
│ │ • 与内容脚本通信 │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ 目标网页 (gemini.google.com) │ │
│ │ ┌───────────────────────────────────────────────────┐ │ │
│ │ │ 内容脚本 (Content Scripts) │ │ │
│ │ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │ │
│ │ │ │ folder │ │ export │ │timeline│ │ ... │ │ │ │
│ │ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │ │
│ │ └───────────────────────────────────────────────────┘ │ │
│ │ ┌───────────────────────────────────────────────────┐ │ │
│ │ │ 页面 DOM │ │ │
│ │ └───────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ 弹出窗口 / 选项页面 (Popup/Options) │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
```
### 工作原理
1. **静态声明** - 在 manifest.json 中配置匹配的 URL 和要注入的脚本
2. **自动加载** - 用户访问匹配页面时自动执行
3. **DOM 操作** - 通过操作页面 DOM 与 Gemini 界面交互
> 📝 Gemini-Voyager 包含 22 个独立的内容脚本模块,每个模块负责一个特定功能。
---
## 4.2 存储服务架构
存储服务是 Gemini-Voyager 的数据中枢,负责管理所有用户数据的持久化存储。
### 存储类型
```
┌─────────────────────────────────────────────────────────────────┐
│ 存储服务架构 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────────┐ │
│ │ StorageService │ │
│ │ (统一入口) │ │
│ └────────┬─────────┘ │
│ │ │
│ ┌────────────────┼────────────────┐ │
│ ▼ ▼ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ chrome. │ │ chrome. │ │ chrome. │ │
│ │ storage. │ │ storage. │ │ storage. │ │
│ │ sync │ │ local │ │ session │ │
│ ├──────────────┤ ├──────────────┤ ├──────────────┤ │
│ │ • 跨设备同步 │ │ • 本地大容量 │ │ • 会话临时 │ │
│ │ • 容量: 100KB │ │ • 容量: 10MB │ │ • 页面关闭 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
```
**三种存储区域:**
- **sync** - 自动同步到 Google 账户,容量 ~100KB
- **local** - 本地存储,容量 ~10MB
- **session** - 会话期间有效,关闭后清除
---
## 4.3 云同步基础
云同步功能允许用户将数据同步到 Google Drive,实现跨设备数据共享。
### 同步流程
```
┌─────────────────────────────────────────────────────────────────┐
│ 云同步流程 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 用户操作 → 本地数据变更 → 同步服务 → OAuth 认证 │
│ ↑ │ │
│ │ ▼ │
│ 同步完成 Google Drive │
│ │
└─────────────────────────────────────────────────────────────────┘
```
**核心特性:**
- OAuth 2.0 认证
- 增量同步(只传输变化数据)
- 冲突处理(最后写入胜出)
- 支持文件夹、提示词、收藏消息同步
---
> ⏳ 下一章将介绍文件夹管理系统
登录后可参与表态
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!