Ariver
2026-05-18 00d66fcdb928754e5a8c69a3b4ccab7832af5b54
AppStore_Submission.md
@@ -1,6 +1,6 @@
# Apptag — Mac App Store 提审资料
> 版本: 5.5.0 | Bundle ID: com.apptag.launcher | 更新日期: 2026-05-11
> 版本: 6.0.5 | Bundle ID: com.apptag.launcher | 更新日期: 2026-05-17
---
@@ -11,8 +11,8 @@
| **App 名称** | Apptag |
| **副标题** | Tag-Based App Launcher |
| **Bundle ID** | com.apptag.launcher |
| **版本号** | 5.5.0 |
| **Build 号** | 550 |
| **版本号** | 6.0.5 |
| **Build 号** | 610 |
| **SKU** | apptag-mac-001 |
| **主要类别** | Utilities (工具) |
| **次要类别** | Productivity (效率) |
@@ -36,7 +36,7 @@
- **Container mode** — Each tag group in its own rounded card with material background. Hover to highlight, click tag pills to jump.
- **Zero Finder dependency** — Tags are stored in a local JSON database. No xattr pollution. No SIP permission issues. Export/import your tag setup as a portable JSON file.
- **Privacy-first** — No network access. No analytics. No data collection. Everything stays on your Mac.
- **9 languages** — English, 简体中文, 繁體中文, 日本語, 한국어, Русский, Français, Italiano, Español.
- **29 language variants** — English, French, Italian, German, Spanish, Portuguese (Brazil), 简体中文, 繁體中文, Korean, Japanese, Russian, Serbian Cyrillic, Ukrainian, Thai, Vietnamese, Arabic, Arabic (Najdi), Turkish, Indonesian, Czech, Danish, Dutch, Norwegian, Norwegian Nynorsk, Norwegian Bokmål, Malay, Polish, Romanian, Swedish.
- **Hover to reveal** — Hide app names for a clean icon-only grid. Hover to see the name.
**Perfect for:**
@@ -58,7 +58,7 @@
- **容器模式** — 每个标签组独立圆角卡片,毛玻璃背景。悬停高亮,点击标签胶囊跳转。
- **零 Finder 依赖** — 标签存储在本地 JSON 数据库。不污染 xattr。不受 SIP 限制。支持 JSON 文件导入/导出备份。
- **隐私优先** — 无网络访问、无分析统计、无数据收集。一切只留在你的 Mac 上。
- **9 种语言** — 简繁中、英、日、韩、俄、法、意、西。
- **29 个语言版本** — 英语、法语、意大利语、德语、西班牙语、巴西葡萄牙语、简体中文、繁体中文、韩语、日语、俄语、西里尔塞尔维亚语、乌克兰语、泰语、越南语、阿拉伯语、Najdi 阿拉伯语、土耳其语、印尼语、捷克语、丹麦语、荷兰语、挪威语、挪威尼诺斯克语、挪威博克马尔语、马来语、波兰语、罗马尼亚语、瑞典语。
- **悬停显示** — 可隐藏 App 名称获得纯粹图标网格。鼠标悬停时显示名称。
**适合:** 重度 App 用户、设计师、开发者、以及厌倦翻 Dock/Launchpad 的所有人。
@@ -187,16 +187,23 @@
## 8. What's New (本次版本更新说明)
```
Apptag 5.5.0
Apptag 6.0.5
- Added a dedicated Language tab in Preferences with live language switching
- Preferences now opens centered above the active TagLauncher overlay, including multi-display setups
- Improved tag reordering in edit mode with live visual feedback and synchronized group layout updates
- Renamed backup actions to Export/Import Categories & Layout across all 9 languages
- Added Mac App Store sandbox entitlements and App Store build validation
- Hid Launch at Login controls in sandboxed App Store builds
- Removed deprecated app launch API usage
- Version updated to 5.5.0 (Build 550)
- Added an Uncommon app marker for apps you are still learning, with optional hover notes
- New apps can be marked as Uncommon automatically and are cleared after enough launches from TagLauncher
- Added local note editing for Uncommon apps; notes stay in the exported JSON even if the marker is removed later
- Added an Uncommon bubble toggle in the Data preferences tab, enabled by default
- Reworked batch category editing into clear Add Tags and Remove Tags modes
- Fixed batch editing so selected apps no longer inherit unrelated tags from each other
- Added clear confirmation feedback showing the real number of tag links added or removed
- Improved Remove Tags mode with red delete indicators and safer label truncation
- Fixed edit-sidebar layout so long localized hints no longer stretch the page
- Removed the edit-page center title and gave more room to the action hint and confirmation button
- Improved shortcut hints in Language, Data, and About settings pages using symbol-only key graphics
- Fixed a crash caused by toolbar hint layout constraints in the edit screen
- Fixed Safari and other modern macOS system apps being missed when they live behind Cryptex system paths
- Kept duplicate app icons out by resolving symlinks for scanning deduplication
- Version updated to 6.0.5, Build updated to 610
```
---
@@ -220,13 +227,18 @@
**已完成配置**:
1. **Entitlements 文件**: `Apptag/TagLauncher.entitlements` 已创建,包含:
   - `com.apple.security.app-sandbox`
   - `com.apple.security.files.user-selected.read-write`,用于用户主动选择位置后的导入/导出 JSON
   - `com.apple.security.temporary-exception.files.home-relative-path.read-only`,用于一次性读取旧版非沙盒数据库 `~/Library/Application Support/Apptag/`
2. **build.sh 已更新**:
   - `APP_STORE=1` 时强制检查 entitlements 文件存在
   - `APP_STORE=1 CODESIGN_IDENTITY="..." bash build.sh` 使用 entitlements 签名
3. **代码处理**:
   - App Store 沙盒环境下会优先迁移旧版非沙盒 `tags.json`,避免升级后标签和排序看起来丢失
   - 本地非沙盒版本保留 LaunchAgent 登录启动
   - App Store 沙盒环境下隐藏 Launch at Login 设置项,并跳过 LaunchAgent 写入
**审核说明建议**: 临时 home-relative-path 读取权限仅用于从旧版非沙盒存储位置迁移用户已有标签、分类和排序数据到 sandbox 容器,不用于持续访问用户文件。
**仍需验证**: TestFlight 中确认沙盒下 Carbon `RegisterEventHotKey` 是否可正常工作。
### 🟢 已处理: Launch at Login 与 Sandbox