隐私政策
最后更新日期:2026 年 9 月 25 日
一、简介与适用范围
本隐私政策描述了 AiDịch TrungViệt(以下称"本应用"、"我们")在您使用我们的中越翻译应用时,如何收集、使用、存储和保护您的信息。本政策适用于本应用的所有功能,包括文本翻译、语音翻译、拍照/OCR 翻译、对话模式和分享扩展。
下载、安装或使用本应用即表示您已阅读、理解并同意本隐私政策中描述的做法。如果您不同意本政策,请勿使用本应用。
本应用由独立开发者 Leaf 开发和维护。我们致力于保护您的隐私,并以透明、负责的方式处理您的数据。
二、我们收集的信息
2.1 翻译数据
使用本应用翻译文本、语音输入或拍照识别的文字时,源文本会实时传输至第三方翻译 API 处理。剪贴板访问默认关闭。开启后,本应用只检测剪贴板中是否有可粘贴的文本;只有您点按“粘贴”时才会读取剪贴板内容。粘贴只会填入文本框,不会发送内容。只有您明确点按“翻译”后,该文本才会传输至第三方翻译 API 进行实时处理。完整原文和译文实时处理后不会存储在我们的服务器上。若增强翻译识别出词典尚未收录的缩写,符合第 6 节限制的候选 token 可能被单独保留;候选记录不附完整句子或设备标识。
2.2 伪名安装标识
我们在本设备的 iOS Keychain 中生成并保存一个稳定随机 UUID;卸载后它仍可能保留,并在重装时继续使用。该标识用于身份认证、频率限制、防欺诈和订阅验权。它不包含您的 Apple ID、邮箱或手机号,但会与 App Attest 身份认证记录及第 6 节所述 StoreKit 权益记录关联。该标识会随每次翻译请求发送至服务器,用于身份认证和频率限制。
2.3 使用统计
本应用仅在设备上按功能(文本、语音、相机、分享扩展)记录已完成的翻译次数,供您参考。该本地计数存储在设备上,并按设备本地日期重置;它不决定请求能否发送。只有服务器在 Cloudflare 基础设施(Durable Objects 和 KV)中维护的按设备和按 IP 每日翻译计数器用于请求准入、频率限制和防滥用。按设备计数器在服务器已有时区基准记录,或成功保存有效的设备 UTC 偏移时,采用记录的设备本地配额日;其他情况采用 UTC。按 IP 计数器和运营统计采用 UTC 日期。服务端频率限制计数器在 72 小时后自动删除。为让设备时区变化前后的配额日保持一致,服务器还会保存与设备 UUID 关联的 tz-anchor:{deviceId} 记录;该记录包含有效的 UTC 偏移和配额日日期,并在最近一次写入 400 天后过期。计数器仅包含设备 UUID 或 IP 地址、处理模式和计数;时区基准记录仅包含上述偏移和日期。两类记录都不存储翻译内容。
还有一项独立的强制性运营计数:服务器按设备和处理服务(engine)记录每日使用次数,采用 UTC 日期,仅包含设备 UUID、处理服务(engine)和计数,48 小时后自动删除,不含翻译内容。该运营计数独立于第 4.6 节所述的可选 TelemetryDeck 分析。
2.4 订阅信息
Apple StoreKit 处理付款方式、卡号和账单详情,我们不会取得这些资料。为验证 Pro 权益并防止欺诈,应用会把签名的 StoreKit 交易凭证发送至 Cloudflare Worker。我们按第 6 节期限保存产品标识、订阅状态、到期日、原始交易标识、StoreKit 环境及验权/同步元数据,并将其与伪名安装标识关联。若已开启使用统计,应用还会把成功购买的产品标识与成功结果发送至 TelemetryDeck。
2.5 用户偏好
语言偏好、外观模式、翻译模式选择和对话场景等设置存储在本地设备上。界面/解释语言、翻译模式、对话场景和称谓偏好可能随请求发送到代理基础设施,以生成更贴合语境的结果。这些偏好不会在服务器上按设备留存;若记录未知缩写候选,仅其规范化场景计数可能随候选存入第 6 节所述共享候选池,翻译模式与称谓偏好会在请求完成后丢弃。
2.6 翻译历史
翻译完成后,源文本、翻译结果、语言对和处理模式会保存到设备本地数据库,方便您查阅。这些历史记录完全存储在设备上,从不传输到任何服务器。应用以保留约 500 条近期翻译为目标;超出后会自动清理最旧的非收藏记录。收藏的翻译不会被自动清理,会保留到您手动删除为止;因此当您收藏较多时,实际保留的总数可能超过 500 条。您可以随时在应用内的历史页面查看和删除翻译历史。
2.7 我们不要求的身份字段
我们不要求创建账户,也不单独索取姓名、邮箱、手机号、地址、精确位置、通讯录、浏览记录、健康数据、支付卡号或账单详情。您主动提交翻译的文本或照片可能包含个人信息,按第 2.1、4 节处理;使用受支持的图像 AI 功能时,图像内容会按第 4.2 节发送给 Google Gemini。请勿提交密码等敏感信息。
三、我们如何使用您的信息
上述信息仅用于以下目的:
• 提供翻译服务 — 将文本传输到翻译 API 并返回结果
• 管理使用额度 — 由服务端计数器执行限制;本机完成次数仅供参考
• 改善应用体验 — 在本地存储您的偏好设置
• 改进缩写词典 — 人工复核有限的未知候选 token 与汇总场景计数
• 改进产品 — 分析主动选择开启的使用、错误、购买和交互事件
• 处理订阅 — 通过 Apple StoreKit 管理 Pro 计划
• 确保服务安全 — 通过 HMAC 设备认证防止 API 滥用
我们不会将您的数据用于广告、营销、跨应用追踪、用户画像或出售给第三方。下述默认关闭的伪名产品分析仅用于了解功能使用情况、排查故障和改进应用。
四、第三方服务与数据处理
我们仅与适用条款对用户数据的保护不低于本政策所述的第三方共享数据,并且只共享提供相应服务所需的数据。
4.1 语音识别与基础翻译提供方
开始语音识别前,应用会先要求有效的基础翻译同意;iOS 会单独请求“语音识别”权限。Apple Speech 可能在设备端或 Apple 服务器处理音频。进行基础翻译时,随后只会把识别出的文本(而非音频)发送给 Google 或 Microsoft。Apple 隐私政策:https://www.apple.com/legal/privacy/
在基础翻译同意有效时,您的文本可能通过 HTTPS 发送至 Google Translate API(translate.googleapis.com)或 Microsoft Translator API(api.cognitive.microsofttranslator.com)处理。Google 是主要基础翻译提供方;Google 不可用时,Microsoft 可能处理基础翻译请求。我们不在自有服务器保留完整翻译内容;第 2.1、6 节所述的有限未知缩写候选可能被单独保留。提供方隐私条款:Google:https://policies.google.com/privacy ;Microsoft:https://privacy.microsoft.com/zh-cn/privacystatement
4.2 AI 文本与图像提供方(需选择启用)
如果您选择启用 AI 翻译(需按 Apple App Store 审核指南 5.1.2(i) 明确同意),AI 文本翻译会通过我们的服务器,经 OpenRouter 转发给 OpenAI 处理。使用受支持的图像 AI 功能时,图像内容会通过我们的服务器发送给 Google Gemini 处理。我们不在自有服务器保留完整翻译正文;第 2.1、6 节所述的有限未知缩写候选可能被单独保留。各服务方按其自身隐私政策处理数据(OpenAI:https://openai.com/policies/privacy-policy ;OpenRouter:https://openrouter.ai/privacy ;Google:https://policies.google.com/privacy )。
OpenAI API 数据控制:https://platform.openai.com/docs/models/default-usage-policies-by-endpoint
• 此功能默认关闭,需要明确选择启用
• 撤回 AI 同意:可随时在设置中撤回;后续 AI 数据传输会立即停止。若基础同意仍然有效,所选引擎会回到基础翻译
• 撤回基础同意:可随时在设置中撤回;这会同时撤回 AI 同意、关闭剪贴板粘贴功能、取消所有进行中的翻译、使分享扩展读取的同意见证失效,并将所选引擎重置为基础翻译。在重新同意基础翻译前,不会发起新的联网翻译请求
4.3 Apple StoreKit
Apple 处理付款方式、卡号、账单详情与 App Store 订阅计费;我们不会取得这些付款资料。为验证权益,应用与 Cloudflare Worker 会接收并处理 StoreKit 提供的签名交易凭证、订阅状态与标识,详见第 2.4、6 节。
4.4 代理基础设施(Cloudflare Workers)
应用内翻译请求(包括分享扩展)通常通过部署在 Cloudflare Workers 上的代理基础设施转发,以保护服务端凭据并施加速率限制。仅当代理基础设施发生故障且基础翻译同意仍然有效时,主应用的基础翻译请求才可能通过 HTTPS 直接发送至 Google Translate API;分享扩展不使用此直连回退。代理基础设施不会在活跃请求之外存储或记录完整原文或译文;第 2.1、6 节所述的有限未知缩写候选可能被单独保留。Cloudflare 隐私条款:https://www.cloudflare.com/privacypolicy/
4.5 AI 服务不可用时
当 AI 文本翻译或受支持的图像 AI 功能不可用时,您仍可使用基础翻译;基础翻译按第 4.1 节由 Google Translate 或 Microsoft Translator 处理。
4.6 默认关闭的伪名产品分析(TelemetryDeck)
我们使用 TelemetryDeck 收集伪名使用统计,用于了解功能使用情况、排查故障和改善应用。数据包括功能、引擎、语言、使用场景、模式选择与 AI 同意状态,应用启动与付费墙交互、错误类别、成功购买后的产品标识与结果,以及 SDK 自动附加的 App、设备、环境和会话元数据。分析 SDK 会在传输前对基于 IDFV 的分析标识做 SHA-256 哈希;当前配置未另加 App 专用盐值。TelemetryDeck 不接收翻译内容、姓名或联系资料。使用分析默认关闭;您可以在「设置 → 隐私与数据 → 使用统计」中主动开启,或随时撤回同意。关闭后,应用停止记录新的分析事件;关闭前分析 SDK 已接收的事件(包括已排队或正在传输的事件)仍可能发送。关闭开关不会删除 TelemetryDeck 已接收的数据。
TelemetryDeck 隐私说明:https://telemetrydeck.com/privacy/
TelemetryDeck 数据说明:https://telemetrydeck.com/docs/guides/privacy-faq/
4.7 汇率提供方(Exchange Rate API)
仅在基础翻译同意有效时,应用会向 Exchange Rate API(open.er-api.com)请求公开汇率。请求不包含翻译文本或其他用户输入;该接收方仍可能看到您的 IP 地址和请求时间。Exchange Rate API 隐私与条款:https://www.exchangerate-api.com/terms
五、数据存储与安全
• 翻译历史使用 Apple SwiftData 框架存储在本地设备上
• 所有网络通信使用 HTTPS/TLS 加密
• API 认证采用 HMAC-SHA256 设备认证
• API 密钥仅存储在服务器端(Cloudflare Workers),不包含在应用中
• 设备认证凭据使用 iOS Keychain 安全存储(kSecAttrAccessibleWhenUnlockedThisDeviceOnly)
• 主应用和分享扩展通过 App Group 容器共享部分设置;App Group 副本留在设备上,界面/解释语言可能按第 2.5 节随翻译请求发送
六、数据保留
• 完整翻译文字:实时处理并在返回结果后丢弃,不存储在服务器上
• 未知缩写候选:最长 64 字符、仅含字母或数字的合格 token 可在不附完整句子或设备标识的情况下用于人工词典复核。每日计数 30 天过期。候选池是最多 4,000 项的单一共享记录;加入任一候选都会刷新整池 90 天闲置期限,因此候选池持续活跃时,单项没有固定自动删除期
• 安装标识:存储在 iOS Keychain;应用没有可靠的卸载清理回调,因此卸载不保证立即删除该 Keychain 值
• 本地使用计数:按设备本地日期重置
• 服务端频率限制计数器:服务器已有时区基准记录,或成功保存有效的设备 UTC 偏移时,按设备计数器采用记录的设备本地配额日;其他情况采用 UTC;按 IP 计数器采用 UTC 日期;计数器在 72 小时后自动删除
• 设备时区基准记录:tz-anchor:{deviceId} 与设备 UUID 关联,包含有效的 UTC 偏移和配额日日期,自最近一次写入起 400 天过期
• 强制性运营使用计数:按设备和处理服务(engine)记录每日计数,采用 UTC 日期,仅包含设备 UUID、处理服务(engine)和计数,48 小时后自动删除,不含翻译内容;独立于可选 TelemetryDeck 分析
• App Attest 密钥记录:包含安装标识;自最近一次成功断言起采用 365 天滑动过期
• App Attest 防重放计数器:无固定自动过期;为防止重复使用已见断言而持续保留
• App Attest 临时 challenge 与 nonce:成功使用后即消耗,否则最迟 5 分钟过期
• 设备安全与防滥用撤销记录:包含安装标识、撤销时间和操作原因,自最后一次写入起 90 天过期
• 订阅验权:未撤销权益与设备映射自最后写入起 60 天过期;已撤销权益的墓碑记录 365 天过期
• 订阅去重记录:客户端验权凭证标记 60 天过期;App Store 服务端通知标记 7 天过期
• 旧版试用开始记录:仅在显式启用旧版 bootstrap 时写入;记录没有自动过期
• 旧版设备端分析队列:旧版本未发送队列可能留在系统管理的缓存目录且无固定过期。使用分析保持关闭时,App 不会加载或发送它;首次主动开启前,App 会先退役这一特定的旧队列。iOS 也可能自行清理,卸载会移除 App 缓存容器
• 翻译历史:存储在本地,直到您手动删除或卸载应用
• TelemetryDeck 分析数据:我们尚未核实固定的自动删除期限,因此不作此承诺。关闭分析不会删除已接收事件;分析 SDK 发送经过哈希的 IDFV 分析标识,且应用没有账户,因此我们可能无法把请求与单一安装的事件对应。隐私请求请联系 leafdev@proton.me,我们会按实际可用能力评估提供方级或项目级处理方式
• AI 提供方数据:各 AI 服务方按其自身隐私政策保留和处理数据(链接见第 4 节)
七、儿童隐私
本应用不面向 13 岁以下儿童。我们不会故意收集儿童的个人信息。如果您认为儿童向我们提供了个人信息,请联系 leafdev@proton.me。
八、您的权利与选择
• 访问与删除:翻译历史和偏好设置存储在本地设备上,可在应用内删除。卸载会移除 App 容器,但不保证立即删除 Keychain 安装标识或服务端记录;这些记录按第 6 节期限处理
• 撤回 AI 同意:可随时在设置中撤回;后续 AI 数据传输会立即停止。若基础同意仍然有效,所选引擎会回到基础翻译
• 撤回基础同意:可随时在设置中撤回;这会同时撤回 AI 同意、关闭剪贴板粘贴功能、取消所有进行中的翻译、使分享扩展读取的同意见证失效,并将所选引擎重置为基础翻译。在重新同意基础翻译前,不会发起新的联网翻译请求
• 使用统计:可在设置中关闭。关闭后应用停止记录新的分析事件;关闭前分析 SDK 已接收的事件(包括已排队或正在传输的事件)仍可能发送,已接收数据不会因关闭而删除
• 隐私请求:请联系 leafdev@proton.me。我们会说明实际可定位的数据与提供方级或项目级处理选项,不承诺一定能隔离单一伪名分析标识的事件
• 数据可携性:存储在设备上的翻译历史可通过应用内置分享功能导出
• 无需账户:本应用不要求创建账户、登录或注册
九、国际数据传输
使用语音输入且您单独授予 iOS 语音识别权限时,Apple Speech 可能在 Apple 或其处理方运营所在的国家或地区处理语音音频。根据您使用的功能和已作出的选择,基础翻译文本可能由 Google Translate 或 Microsoft Translator 处理;AI 文本会经 OpenRouter 转发给 OpenAI;受支持的图像 AI 内容可能由 Google Gemini 处理。数据可能在各服务方运营所在的国家或地区处理;相关跨境传输受各服务方适用条款与保护措施约束。
十、隐私政策变更
我们可能不时更新本隐私政策。发生重大变更时,我们将更新政策顶部的"最后更新"日期。继续使用本应用即表示接受修改后的政策。