# 权限

> 说明 DockSpark 为何需要 macOS 辅助功能、自动化和完全磁盘访问权限，如何在系统设置里关闭它们，以及如何用终端删除授权并清除本机设置。没有辅助功能，悬停面板无法工作。

Source: https://dockspark.app/zh/docs/getting-started/permissions

## 辅助功能

### Dock 悬停所必需

DockSpark 通过 macOS 辅助功能 API 识别指针下的 Dock 图标并读取其位置。没有这项权限，就无法显示悬停面板。

## 自动化

某些浏览器操作需要 macOS 自动化权限。DockSpark 仅会在你使用相关操作时请求授权，并由 macOS 显示授权提示。

## 完全磁盘访问

读取 Chromium 或 Firefox 个人资料时，可能需要完全磁盘访问权限。若确实需要，DockSpark 会先说明原因再打开系统设置。你可以在那里允许或拒绝。

> **控制权在你手上**
>
> 这些权限都由 macOS 管理，可随时查看或关闭。关闭后相关功能会停止；你仍可以在 DockSpark 中重新申请授权。

## 在系统设置中撤销权限

1. **打开「系统设置」。** 在边栏中选择「隐私与安全性」。
2. **打开要撤销的权限。** 选择「辅助功能」、「自动化」或「完全磁盘访问」。
3. **关闭 DockSpark 的访问。**
   - **辅助功能**和**完全磁盘访问：** 关闭 DockSpark 旁边的开关。若要从列表中删除，选中 DockSpark，再点列表下方的「−」。
   - **自动化：** 展开 DockSpark，取消勾选它被允许控制的应用，例如 Safari、Google Chrome 或 Firefox。
4. **按系统提示操作。** 若 macOS 要求，请先选择「退出 DockSpark」，再重新打开应用。只关闭主窗口不够，应用仍会在后台运行。

撤销后会出现这些限制：没有辅助功能，悬停面板无法出现；没有自动化，打开指定个人资料或隐私窗口可能失败；没有完全磁盘访问，Chromium 或 Firefox 个人资料列表可能无法自动刷新，但仍可手动填写 Chromium 的 `Default` 或 `Profile 1`。

路径汇总：System Settings → Privacy & Security → Accessibility / Automation / Full Disk Access。辅助功能只用于定位 Dock 图标，不读取网页。更偏产品说明的版本见 [隐私](/privacy)。

## 用终端删除权限并清除设置

> **危险操作**
>
> 下面的命令会删除 macOS 已经授予 DockSpark 的权限，并清除应用的本机设置项。这会导致功能受限：悬停面板、打开指定个人资料或隐私窗口、自动读取 Chromium 或 Firefox 个人资料目录都可能无法继续提供。个人资料的显示名称、颜色和排序也可能丢失。请只在你明确要重置时使用。之后你仍然可以在 DockSpark 中重新申请权限。

1. **先退出 DockSpark。** 从菜单栏或 Dock 图标选择「退出 DockSpark」，或在终端中运行下面的退出命令。不要只关闭主窗口。
2. **打开「终端」应用。** 路径是「应用程序」→「实用工具」→「终端」。请使用 macOS 自带的「终端」，把命令粘贴进去后按 Return 运行。
3. **只运行你需要的命令。** 每条命令都针对 DockSpark 的 bundle ID `app.dockspark.DockSpark`。不要省略这个 ID，否则可能重置其他应用的同类权限。

在终端中退出 DockSpark：

```bash
osascript -e 'tell application "DockSpark" to quit'
```

删除辅助功能权限：

```bash
/usr/bin/tccutil reset Accessibility app.dockspark.DockSpark
```

删除自动化权限：

```bash
/usr/bin/tccutil reset AppleEvents app.dockspark.DockSpark
```

删除完全磁盘访问权限：

```bash
/usr/bin/tccutil reset SystemPolicyAllFiles app.dockspark.DockSpark
```

清除 DockSpark 的设置项：

```bash
defaults delete app.dockspark.DockSpark
rm -f ~/Library/Preferences/app.dockspark.DockSpark.plist
rm -rf ~/Library/Application\ Support/DockSpark
rm -rf ~/Library/Containers/app.dockspark.DockSpark
```

如果 `defaults delete` 提示该偏好设置域不存在，可以忽略，表示当前没有可删的设置。完成后重新打开 DockSpark。应用会再次请求它仍需要的权限；你也可以回到「系统设置」里重新打开对应开关。恢复辅助功能后，DockSpark 可以重建 Dock 悬停监听。
