Files
keyboard/docs/app-store-submission-checklist-2026-03-07.md
2026-03-08 21:29:10 +08:00

9.2 KiB
Raw Blame History

KeyBoard 提审前清单

更新日期2026-03-07

本文档基于两部分信息整理:

  1. 当前工程静态检查结果与最近几轮已修复项
  2. Apple 截至 2026-03-07 仍公开可查的官方要求

目标不是“理论合规”,而是尽量提高这次送审的一次通过率。

一、当前判断

项目本身不属于明显的违规型产品,主要风险集中在:

  1. 审核员是否能顺畅走完 安装 App -> 启用键盘 -> 开启 Full Access -> 登录 -> 使用 AI -> 购买/恢复购买
  2. RequestsOpenAccess = true 的隐私披露、权限说明、App Privacy 申报、隐私政策正文是否完全一致
  3. AI / persona / 语音相关内容是否有足够明确的内容安全与举报处理机制
  4. 订阅、协议、隐私、元数据是否存在“能点但不清楚”或“描述过度”的情况

二、目前已完成

以下项已经处理,不再是当前最高风险:

  1. 协议、隐私政策、会员协议入口已经从空实现改为真实跳转/真实页面兜底
  2. KBWebViewViewController 的链接错误已经修复
  3. Web 页返回箭头被遮挡的问题已经修复
  4. KBPayMainVCrestoreButton 英文文案显示不全问题已经修复
  5. 重复的 Shared / KBConfig / KBAuthManager 历史副本已经收敛为顶层 Shared

注意:协议入口虽然已经打通,但如果你还没换成正式线上 URL这一项只能算“代码层打通”不算“提审完成”。

三、提审前必须完成

1. 替换正式协议 URL 和正式正文

必须完成:

  1. KBConfig.h 中填入正式线上地址:
    • KB_TERMS_OF_SERVICE_URL
    • KB_PRIVACY_POLICY_URL
    • KB_MEMBERSHIP_AGREEMENT_URL
  2. 确保线上页面不是占位页,不是空白页,不是“敬请期待”
  3. 确保协议正文明确写清:
    • 收集哪些数据
    • 是否上传键入文本
    • 是否上传语音
    • 上传目的
    • 是否用于模型训练
    • 数据保留时长
    • 如何删除账号与数据
  4. 确保 App 内文案、隐私政策、App Store Connect 的 App Privacy 三者完全一致

对应风险:

  1. 2.1 App Completeness
  2. 2.3.1 Accurate Metadata
  3. 5.1.1 Data Collection and Storage

2. 完成 App Store Connect 的 App Privacy 申报

必须完成:

  1. 逐项盘清主 App 与键盘扩展到底收集了什么
  2. 对以下类型重点核对是否需要申报:
    • 账号信息
    • 用户内容
    • 音频数据
    • 诊断数据
    • 使用数据
    • 购买信息
  3. 明确区分:
    • 仅设备本地处理
    • 会发往你方服务器
    • 会共享给第三方 SDK
  4. 如果某项在键盘扩展里只在 Full Access 后发生也要按“App 整体最全面数据实践”申报

重点核对问题:

  1. 开启 Full Access 后是否会发送键入内容到服务端
  2. 语音输入是否上传服务器做识别或生成
  3. 是否保存聊天内容、persona 对话、历史输入、账号数据
  4. 是否有埋点、诊断、崩溃、分析 SDK

对应风险:

  1. 5.1.1
  2. App Privacy 填报不实导致的审核驳回

3. 写清楚 Review Notes

这是你这类键盘 App 的高优先级项。

必须写进 Review Notes

  1. 审核设备上如何启用键盘
  2. 如何在系统设置里打开 Full Access
  3. 哪些功能在键盘扩展内可以直接完成
  4. 哪些功能会拉起主 App 完成
  5. 登录路径
  6. 购买路径
  7. 恢复购买路径
  8. 提供可直接使用的测试账号
  9. 如果 AI、语音、订阅依赖服务器确认服务在审核期保持可用

建议写法要点:

  1. 用步骤写,不要写泛泛描述
  2. 写清楚“如果 reviewer 没开 Full Access会看到什么”
  3. 写清楚“为什么某些购买/登录操作会跳回主 App”

对应风险:

  1. 2.1 App Completeness
  2. 审核员误判“功能不可用”

4. 补齐 AI / persona / 语音的内容安全兜底

必须完成:

  1. 确认服务端存在内容审核或关键词/策略拦截
  2. 对以下类型有最基本的拦截策略:
    • 成人/性暗示
    • 仇恨/歧视
    • 骚扰/威胁
    • 自残/极端危险内容
  3. App 内明确保留举报入口,并保证流程可用
  4. 如果存在用户生成的人设、头像、简介、评论,也要有举报与处理机制

建议补充:

  1. 在 AI 页面补一段简短说明,明确“内容由 AI 生成,可能不准确”
  2. 在审核备注里说明你有内容审核、举报与处理机制

对应风险:

  1. 1.1 Objectionable Content
  2. 1.2 User-Generated Content
  3. 4.7 涉及聊天/插件型软件时的过滤与举报要求

5. 订阅展示与订阅元数据核对完成

必须完成:

  1. 订阅页显示内容与 App Store Connect 配置一致
  2. 恢复购买入口可用
  3. 订阅页能访问隐私政策和 Terms / EULA
  4. 审核员能明确知道购买后获得什么权益
  5. 如果有试用、周期、价格说明,必须准确

同时核对:

  1. App 描述、截图、预览里是否把付费能力说清楚
  2. 是否把本来受限于订阅的能力误写成所有用户都可用

对应风险:

  1. 3.1.1
  2. 3.1.2
  3. 2.3.2

6. 元数据降承诺,避免夸大

必须完成:

  1. 商店描述不要写成“任何 App 都可稳定使用全部 AI / 语音 / 登录 / 购买能力”
  2. 明确第三方键盘天然限制:
    • 安全输入框不可用
    • 某些系统场景不可用
    • 某些能力依赖 Full Access
  3. 不要写“全场景可用”“所有输入框可用”“无需切换即可全部完成”

对应风险:

  1. 2.3.1 Accurate Metadata

7. 真机完整走查一遍

必须在真机上完成,不建议只看模拟器:

  1. 首装 App
  2. 注册 / 登录
  3. Apple 登录
  4. 账号注销
  5. 启用键盘
  6. 开启 Full Access
  7. 键盘 AI 输入
  8. 语音输入
  9. 拉起主 App 登录
  10. 拉起主 App 购买
  11. 恢复购买
  12. 协议 / 隐私政策 / 会员协议打开
  13. 断网 / 弱网 / 未登录 / 未开 Full Access 的兜底提示

审核关注的是“能不能稳定用”,不是“你本地跑通过一次”。

四、建议在提审前也完成

1. 准备一套专门给审核员的测试路径

建议准备:

  1. 一个可登录测试账号
  2. 一组固定可复现的 persona / AI 演示输入
  3. 一条可稳定触发订阅购买页的路径
  4. 一条可稳定触发恢复购买的路径

2. 核对权限申请时机与文案

建议检查:

  1. 麦克风权限是否只在真正开始语音功能时再申请
  2. 权限文案是否说明真实用途
  3. 是否存在“先要权限,功能再解释”的情况

3. 做一次审核视角的异常测试

建议故意测试:

  1. 未登录直接进 AI
  2. 未开 Full Access 直接进扩展高级功能
  3. 服务端异常
  4. IAP 商品加载失败
  5. 协议 URL 打不开

目标是让 reviewer 遇到异常时也能理解,不会直接判“不可用”。

五、提交物料清单

提审前建议你准备好以下材料:

  1. 最终版隐私政策 URL
  2. 最终版 Terms / 会员协议 URL
  3. App Store Connect 的 App Privacy 填报截图或内部核对表
  4. Review Notes
  5. 测试账号
  6. 订阅商品配置清单
  7. 审核演示路径截图或内部 SOP

六、建议的最终提审门槛

至少满足下面这些条件再点提交:

  1. 所有协议/隐私/会员协议入口都能打开正式内容
  2. App Privacy、隐私政策、权限文案、Review Notes 四者一致
  3. 审核员不用猜你产品流程就能完成键盘启用、登录、AI、订阅体验
  4. AI / persona / 语音内容有明确的审核与举报机制
  5. 真机完整走查至少 1 遍,最好 2 台设备、2 个语言环境

七、你现在最值得优先做的 5 件事

按优先级排序:

  1. 填正式协议 URL并把正文改成最终版
  2. 完成 App Store Connect 的 App Privacy 申报核对
  3. 写最终版 Review Notes并准备测试账号
  4. 核实 AI / 语音 / persona 的内容安全与举报闭环
  5. 真机完整跑通 启用键盘 -> Full Access -> 登录 -> AI -> 订阅 -> 恢复购买

八、官方参考

以下页面均为 Apple 官方来源,已于 2026-03-07 核对:

  1. App Review Guidelines
    https://developer.apple.com/app-store/review/guidelines/
  2. Offering account deletion in your app
    https://developer.apple.com/support/offering-account-deletion-in-your-app/
  3. Manage app privacy
    https://developer.apple.com/help/app-store-connect/manage-app-information/manage-app-privacy
  4. App Privacy Details
    https://developer.apple.com/app-store/app-privacy-details/
  5. Creating a custom keyboard / Custom Keyboard guidance
    https://developer.apple.com/documentation/UIKit/creating-a-custom-keyboard
    https://developer.apple.com/library/archive/documentation/General/Conceptual/ExtensibilityPG/CustomKeyboard.html

九、备注

这份清单是“上架执行清单”,不是法律意见,也不是 Apple 的通过保证。

如果按当前工程状态直接提,风险仍主要集中在:

  1. 隐私披露不一致
  2. 审核员走不通键盘链路
  3. AI 内容安全证据不足
  4. 元数据对键盘能力描述过满

如果你要继续推进,下一步最值钱的是再补两份文档:

  1. Review Notes 最终版
  2. App Privacy / 隐私政策披露对照表