ScanMyShift 隐私政策
生效日期:2026 年 9 月 6 日
最后更新:2026 年 9 月 6 日
1. 关于我们
ScanMyShift 由位于中国的个人开发者张彪运营,下文简称“我们”。我们对本政策所述 ScanMyShift 个人信息处理负责。
隐私联系邮箱:cherishbingo@gmail.com。
本政策适用于 ScanMyShift Android 应用及排班识别服务。应用将排班表转换为可编辑班次,并在你确认后写入所选日历。不需要注册 ScanMyShift 账户,但不注册不等于不处理数据:云识别、广告、订阅以及诊断会涉及下述服务商。本文描述 Android V1 的实现,具体功能以已启用的发布版本为准。
隐私概要
以下概要帮助你快速了解主要数据流,不替代后文的完整说明:
- 你保存的班次库主要保存在设备本地;我们不提供 ScanMyShift 账户或自建的云端班次同步。
- 只有你主动使用云识别时,整张所选排班图片、目标员工姓名和请求标识才会经 Cloudflare Worker 转交签约的 AI 网关及其使用的模型服务商。你可以不用云识别,改为手动录入。
- AdMob、Google Play、RevenueCat 和 Firebase 会按各自功能处理广告、订阅、应用/设备、使用情况或诊断信息;我们不把排班图片、员工姓名或日历内容附加给这些服务。
- 我们不把排班内容用于广告定向,也不使用它训练自有模型;这不等于所有第三方服务商都承诺零保留或不训练,具体边界见第 3、5 至 10 节。
- 清除本地数据、删除日历事件、取消订阅和请求第三方删除是不同操作。可用的控制和删除边界见第 10、11 节,也可通过隐私邮箱联系我们。
2. 保存在设备上的信息
应用在本地数据库和偏好设置中保存目标员工姓名、工作标签、班次日期和时间、工作/休息状态、职位、工作地点、备注、排班识别的相关原文、待核对标记和导入历史,以及日历关联和写入状态、时区、设置、同意选择、免费识别用量和广告奖励识别余额。
我们没有基于账户的云端班次库,也不提供自有的跨设备排班同步。手动输入的班次内容不会发送到我们的识别服务,但已启用的第三方 SDK 仍可能按下文说明联网。
应用读取设备地区设置与时区,用于日期/时间显示和创建日历事件。工作地点是输入的文本,不是 GPS 定位。
3. 照片与云端 AI 识别
云识别是可选功能,需要你在应用内同意;不同意时可以手动录入。选择或拍摄排班表并开始识别后,应用会修正方向、供你预览和旋转,再压缩上传。准备上传时去除源 EXIF 元数据,包括其中的位置信息;这不会抹除图片上可见的文字或其他内容。
识别请求包含所选图片、你填写的目标员工姓名、图片格式和请求标识,通过 HTTPS 发送到 Cloudflare Workers 上的服务。Worker 将图片、目标姓名及提取指令交给签约的 AI 网关和该次请求使用的模型服务商处理,结果返回应用供你核对。此请求不包含已保存的整套日历、广告标识符、订阅凭据或识别余额。
上传的是整张所选图片,不是只上传匹配员工的一行。因此,即使只要求提取目标员工的班次,图片中其他同事的姓名或信息仍会上传。只上传你有权提供的内容;可先在其他图片编辑工具中移除无关信息。不要上传患者资料、医疗详情、身份证件或其他不必要的敏感信息。本应用是排班工具,不是患者记录服务。
我们的 Worker 不将图片、目标姓名或识别结果持久化到应用数据库、对象存储或应用日志中;它们用于处理请求,响应声明不缓存。这不等于所有基础设施和 AI 服务商都承诺零保留。
签约的 AI 网关及其履行请求所用的模型服务商也会处理提交内容。我们尚未核实一套适用于实际线路中所有服务商的统一内容保留期限、模型训练处理规则和删除流程,因此不承诺所有服务商立即删除或一律排除模型训练。可通过隐私联系方式询问当前服务商信息及适用条款。
ScanMyShift 不将排班内容用于广告(包括广告定向),也不使用它训练自有模型。AI 结果可能有误,由你决定保存和写入日历的内容;我们不据此作出就业或资格决定。
4. 相机、图片及日历权限
- 相机:仅在你选择拍摄排班表时使用;应用拍照不录制音频。
- 图片:通过选择器访问你选择的图片,不在后台扫描或上传整个相册。
- 日历:获得权限后读取可用日历及账户标签供选择,读取已关联事件,并按你要求的操作创建、更新或删除事件;日历及事件标识保存在本地。我们不把日历列表、账户标签或无关事件上传到识别服务,也不用于广告定向。
可以在 Android 设置中撤销相机或日历权限。没有日历权限时仍可在应用中保留班次,但不能执行需要该权限的日历操作。
如果选择 Google、工作账户、共享或其他可同步日历,日历服务商可能把事件上传到其服务器,或让有访问权的人看到。日历提醒及锁屏通知也可能依设备设置展示事件信息。这些副本和展示独立于 ScanMyShift 本地存储。
5. 广告与奖励识别
我们使用 Google AdMob 原生广告及可选的激励广告。Google Mobile Ads 可能处理 IP、广告 ID 或应用集 ID 等设备/账户标识、广告交互及诊断数据,用于广告投放、衡量和反欺诈。IP 可用于估计大致位置,不需要 GPS 权限;具体处理取决于隐私选择和 SDK 配置。参见 SDK 数据披露 和 Google 隐私政策。
应用使用 Google UMP,在请求广告前处理适用的广告隐私选择;要求提供该入口时,可在设置中重新打开“Ad privacy options”。也可使用 Android 广告 ID 控制。非个性化或受限广告不一定等于不处理数据。
广告请求不附带排班图片、员工姓名、班次、日历内容或备注。奖励识别余额由广告 SDK 的奖励回调在本地更新,没有 ScanMyShift 服务端奖励账本,但 Google 仍会处理广告交互。Firebase Analytics 与广告服务所需的数据处理相互独立。
6. 订阅
Google Play 处理购买,RevenueCat 管理订阅校验、恢复及 Pro 权益。RevenueCat 使用 SDK 生成的假名化应用用户标识,处理购买记录、订阅状态和相关应用/设备元数据。SDK 称为“匿名”的 ID 不一定属于法律意义上的匿名数据。参见 RevenueCat 隐私政策 和 Google Play 数据披露。
即使未购买,SDK 也可能为查询权益或可售方案而连接 RevenueCat。我们不向它传入目标员工姓名、排班图片或日历内容,不接收完整银行卡信息。Pro 依据 RevenueCat 权益信息判断,不依赖 ScanMyShift 自建订阅数据库。
卸载或清除本地数据不会取消订阅,也不会删除商店/服务商的交易记录。请通过 Google Play 管理或取消订阅。
7. 使用统计与崩溃诊断
配置完整的正式发布版本使用 Firebase Analytics 和 Firebase Crashlytics 了解功能使用情况并诊断可靠性问题。应用设置页不提供单独的 Firebase 采集开关。Firebase 处理独立于云识别同意和广告隐私选择。
应用发送预定义功能事件、限定范围的数量和耗时;崩溃报告包含技术故障类别和经过清理的应用生成堆栈。SDK 还可能处理安装标识、应用版本、设备和操作系统信息、崩溃时间及原生诊断信息。我们不附加姓名、照片、排班原文、班次内容、日历标识或购买凭据。应用禁用 Analytics 的广告 ID 采集、广告存储、广告用户数据、广告个性化信号和自动屏幕上报。参见 Firebase 隐私说明。
Firebase 可能依据服务配置排队或保留相关信息。清除 ScanMyShift 本地数据、卸载应用或修改广告隐私选择,都不能撤回已经发送到 Firebase 的信息。
8. 服务安全与客服
Cloudflare 处理 IP 等网络信息以提供和保护识别接口;我们使用边缘节点提供的 IP 进行限流。应用日志仅包含请求/追踪标识、状态和错误类别、处理耗时,不包含排班内容或原始请求体。Cloudflare 还可依据其服务安排保留请求时间、方法、URL、网络信息等服务/安全元数据。参见 Cloudflare 隐私政策。
你联系我们时,我们处理邮箱、消息及你主动发送的资料以回复和处理问题。不要发送银行卡详情或未脱敏排班表;必要时可能请求应用版本、请求的大致时间或交易参考信息,而不是无关身份证明。
9. 处理目的及接收方
处理目的为提供请求的排班和识别功能、验证订阅、运营广告、了解功能使用情况、改进可靠性、处理客服以及保护服务。接收方为上文列明的服务商及你选择的日历服务;签约的 AI 网关可能调用不同模型服务商完成请求。法律要求,或处理欺诈、安全事件和法律请求确有必要时,我们也可能依法披露持有的信息。
如适用 EEA/英国数据保护法,拟采用的依据包括:可选云上传的同意;请求的本地/日历及订阅功能所需的履约;了解使用情况、保障安全可靠服务、诊断故障和处理客服的合法利益;以及法律义务。如适用法律要求在分析或诊断采集前取得同意,我们会在采集前通过适合相应地区的独立流程请求同意。广告按要求取得同意并遵守适用选择。这些依据不意味着可以没有适当依据就上传他人的敏感信息。
我们不出售排班内容,但广告标识相关处理在部分法律下仍可能属于“共享”“出售”或定向广告。适用时可以通过所提供的广告隐私控制或联系我们行使退出权;一般性接受本政策不等于同意这些处理。
10. 保存期限与删除
- 本地班次和设置:保留到你删除、成功清除相应数据或通过 Android 移除应用存储。“Clear unfinished drafts”保留已确认班次和设置;“Clear all local data”移除应用管理的班次/历史、目标姓名、设置和识别余额,不代表抹除所有第三方 SDK 记录或缓存。
- 日历事件:除非明确选择删除,否则继续保留。应用只尝试删除仍有有效关联且具备权限的事件;若失败,会提示部分完成并保留受影响的关联班次及设置以便重试。清除关联或卸载后,可能须在日历应用中删除事件。共享副本、回收站及备份依日历服务商规则处理。
- 图片:预览和处理副本是临时数据;标准化预览在不需要时释放,初始化时清理遗留预览。相机/选择器缓存可能留到系统或你清理为止。清除本地班次不会删除相册原图。Worker 不建立持久化排班档案,但服务商的保留另行适用。
- 安全与运行日志:ScanMyShift 在 Cloudflare Workers Logs 中记录的应用处理结果,按当前服务限制最长保留 7 天。Cloudflare 仍可能依据其条款另行保留安全和服务元数据。仅在调查安全事件、防止滥用或履行法律义务确有必要时延长相关专项记录。
- AI 服务商记录:内容保留和删除适用该次请求所使用的签约 AI 网关及模型服务商规则。实际线路可能使用不同服务商,因此我们不承诺统一的服务商删除期限。本地删除不能撤回已经发送的请求;可联系我们查询适用服务商或提出删除请求。
- Firebase Analytics 与 Crashlytics:Analytics 数据依实际 Firebase/Google Analytics 项目的保留设置及删除控制处理。Crashlytics 当前说明为崩溃堆栈及相关标识保留 90 天后开始从在线及备份系统移除,不是即时删除;参见 Firebase 保留说明。可联系我们查询当前 Analytics 设置或请求适用的删除协助。
- 订阅与客服:订阅记录依据 Google Play 与 RevenueCat 安排,在校验权益、恢复购买、管理交易及履行法律义务所需期间保留。客服消息通常在处理请求期间及处理完成后最多保留 12 个月,用于跟进、安全和争议处理;法律要求延长或你成功请求提前删除的情况除外。
我们不能远程读取或删除仅保存在你设备上的班次库。对于我们或代表我们处理的服务商所持有的信息,可联系隐私邮箱;我们会评估请求、进行适度核验并协助适用的删除请求,说明法律保留要求或技术限制,不承诺清除应用就会抹除服务商记录。
11. 你的选择与权利
你可以改用手动录入、停止发起扫描、撤销相机/日历权限、调整可用广告隐私选择、编辑/删除本地班次,并联系我们处理数据请求。
当前应用没有独立的“关闭云识别同意”开关。成功执行“Clear all local data”会重置已保存的云识别同意,同时删除上述其他本地资料。仅为停止后续上传,不必删除班次,停止使用识别并改用手动录入即可。如需撤回处理同意或请求删除已提交信息,请联系我们;撤回不影响此前合法处理。
依所在地和适用法律,你可能享有访问、更正、删除、可携带副本、限制处理、撤回同意及向数据保护机构投诉的权利。也可能有权反对基于合法利益的处理,以及退出定向广告或法律定义的出售/共享。 可通过隐私邮箱提出请求;我们按法定期限回应,不因你行使受保护权利而处罚你,但部分功能必然依赖提供该功能所需的数据。
12. 跨境处理与安全
服务商跨地区运营,信息可能在你所在国家之外处理,隐私法律可能不同。适用法律要求跨境保障时,我们使用相关服务商安排所提供的适用保障,并可应请求说明可提供的信息。可联系我们了解相应请求涉及的服务商和保障;法律要求其他依据或保障时,不把你一般性接受本政策视为单独的跨境授权。
识别使用 HTTPS;供应商密钥保留在服务端,不放入应用。应用使用 Android 私有存储并禁用标准应用备份设置;数据库和偏好设置没有额外的应用级数据库加密。请使用设备安全措施保护数据;任何存储和传输都无法保证绝对安全。
13. 儿童与政策更新
ScanMyShift 面向管理工作班次的人,不是以儿童为对象的服务。未达到所在地可自行同意相关处理年龄的用户,应仅在父母或法定监护人授权下使用。如认为儿童不当提供了资料,请联系我们调查和处理。
功能或服务商变化时,我们可能更新政策和日期,并在需要时另行通知或取得新的同意;更新政策本身不授权需要你同意的新用途。
14. 联系方式
隐私问题和请求请发送至 cherishbingo@gmail.com,注明 ScanMyShift 和请求内容;不需要注册 ScanMyShift 账户。