## 背景
用户要同时办三件事:① 上架华为 AppGallery ② 申请正式发布证书 ③ 在阿里云做 APP 备案。
本目录是这三件事的全部材料,信息**全部取自真实代码与实测**,不是套模板。
## 材料清单
| 文件 | 用途 |
|---|---|
| `README总览.md` | 先看这个:材料索引 + 三件事的先后关系 + 你现在就能做的 |
| `商店上架文案.md` | AGC 各字段可直接复制的文案(一句话简介/应用介绍/更新说明/分级问卷/隐私标签) |
| `商店信息_结构化.json` | 同上,机器可读 |
| `隐私政策.md` | 完整隐私政策正文 |
| `用户服务协议.md` | 完整用户协议正文 |
| `正式证书与签名切换.md` | 发布证书申请 + release 打包全流程 |
| `APP备案材料.md` | 阿里云 APP 备案逐字段填写指引 |
| `图标/app_icon_216.png` | AppGallery 图标(216×216,9.7KB) |
| `图标/app_icon_1024.png` | 备案图标 + 1024 规格(112KB) |
| `verify_materials.py` | 校验材料与代码一致(42 项) |
## 实测核对过的事实(材料里的数字都从这里来)
- 包名 `familybook.yangyq.net`、版本 `0.8.0` / versionCode `800`(`AppScope/app.json5`)
- 应用名「家书」(`AppScope/resources/base/element/string.json`)
- 权限 **只有 3 个且全是普通权限**:INTERNET / GET_NETWORK_INFO / DETECT_GESTURE
(`entry/src/main/module.json5`)—— 定位、通讯录、相机、麦克风、设备标识符**一个都没申请**
- 第三方 SDK:**无广告、无统计、无推送**
- 后端域名 `family.yangyq.net`,服务器阿里云 `47.104.72.161`(中国大陆)
权限少是审核优势:「权限滥用」是驳回第一大类原因,家书直接绕开。
隐私政策第二节与第十节做了**权限逐条对照表**,可直接给审核看。
## 图标为什么要重做
包内 `fb_logo.png` 是 **192×192 且自带圆角**(四角透明,半径约 33px)。
AppGallery 两种规格都不达标(要 216 或 1024,且「square-shaped icon」)。
→ 取内部主色 #F2E9D8 铺满方形画布补掉缺角,图案原样叠加、不裁切不缩放,
生成 216 与 1024 两版。图案与包内完全一致(审核要求后台图标 = 包内图标同一图案)。
第一版直接用 LANCZOS 放大,**保留了圆角**,被 `verify_materials.py` 抓到并修正 ——
这就是写那个校验脚本的意义。
## 四个必须先解决的问题(已写进总览,不隐瞒)
1. **现在是调试证书** → 备案要正式证书的公钥/MD5,上架要正式签名(调试包报 991/1014)
2. **没有「家书」软著** → 备案不强制;华为要求但可用《免责函》过渡(6 项现有软著均无关)
3. **隐私政策页面还不存在** → 站点无 privacy 路由;建议用华为自带托管服务(SyncCalendar 用的那个,实测 200)
4. **阿里云服务器是否包年包月** → 备案硬性要求,需用户去控制台确认
## 顺序(三者有依赖,不能乱)
```
① 申请正式证书(10 分钟,AGC 即时出证)
↓ 拿到后才能
② APP 备案(1~20 工作日,最慢,先提交)
③ 打 release .app 包
↓ 拿到备案号才允许提审
④ 提交 AppGallery 审核(1~7 工作日)
↓
⑤ 公安联网备案(上架后 30 日内)
```
## 校验
`python3 verify_materials.py` → **42 项全过**:
包名/版本/名称与代码一致、权限集合完全一致、隐私政策"未申请"的声明与代码相符、
字数限内、三份文档互相不打架、图标尺寸与四角不透明、已知缺口如实记录。
## 没做的事(刻意的)
- 不生成截图:必须真机原生界面,不能是设计稿(审核明确禁止)
- 不填备案表:实名主体必须本人操作,且工信部短信核验要发到本人手机
- 不碰 AGC:需要登录用户账号,部分环节要扫码/人脸
13 KiB
家书 隐私政策
生效日期:2026 年 11 月 1 日
最后更新:2026 年 11 月 1 日
适用产品:家书(HarmonyOS 应用,包名 familybook.yangyq.net)
开发者:杨永全(个人开发者)
引言
家书是一款家庭内部使用的生活档案工具,用于记录一家人的日程、任务、纪念日、观影、旅程、财务、读书笔记与资料附件。
我们深知家庭数据的高度私密性。因此家书在设计上遵循一条原则:
数据属于用户自己。我们不收集、不上传、不商用、不共享。
本政策逐条说明:我们会处理哪些信息、为什么处理、存在哪里、会不会给别人、你有哪些权利、怎么联系我们。
我们不做的四件事(在此明确声明,便于审核与用户核对):
- 不含任何广告 SDK,不投放广告,不做用户画像。
- 不含任何第三方统计/埋点 SDK(无友盟、无友盟+、无 TalkingData、无华为分析等)。
- 不申请设备标识符(不读取 OAID / IMEI / IDFA / SN / MAC 等)。
- 不向任何第三方出售、出租、交换你的个人信息。
一、我们处理的个人信息
家书的功能决定了它会保存"你自愿填进去的内容"。这些内容全部保存在你自己部署的服务器和你本机上,我们不设中心化数据库。
1.1 账号信息(必需)
| 信息项 | 用途 | 是否必需 |
|---|---|---|
| 手机号 | 登录账号的唯一标识 | 必需(不提供无法登录) |
| 密码 | 账号鉴权 | 必需 |
| 姓名 / 昵称 | 在家庭成员中标识你 | 必需 |
| 头像 | 界面显示 | 可选 |
存储方式(重要):
- 密码经 bcrypt 单向哈希后存储,我们无法还原你的明文密码。
- 手机号存储为两列:一列是 SHA-256 哈希(仅用于登录时比对查找),另一列是 AES-256-CBC 加密后的密文(仅用于在设置页回显给你本人)。
1.2 你主动录入的家庭内容(核心功能)
以下内容均由你主动填写或上传,不填写就不存在:
- 家庭成员名册:姓名、称谓、生日、关系、单位、职务、联系方式、备注
- 日程:标题、起止时间、地点、备注、参与人、提醒设置、附件照片
- 任务:标题、描述、截止时间、看板、子任务、评论、附件
- 纪念日:名称、日期、关联成员、图标
- 观影:片名、海报、观影日期、评分、影评、评论
- 旅程:行程节点、出发到达地、交通、花费、照片、同行人
- 财务账本:账目金额、分类、日期、备注、快照
- 读书:书名、作者、封面、章节、读书笔记
- 资源:证件、资料的标题、描述、附件文件
- 笔记:分块笔记内容、标签、分享设置
⚠️ 关于身份证号:家书的名册字段中预留了身份证号,但它是可选字段,你不填就不会有任何数据。若你填写,服务端以 AES-256-CBC 加密存储,明文不落盘。
⚠️ 关于附件照片:仅在你主动从系统相册选择或拍照上传时才会读取你选中的那一个文件。我们不扫描、不遍历你的相册。鸿蒙系统在应用访问相册时会弹出系统级选择器,你能看到并且可以拒绝。
1.3 设备本地数据
为提升体验,以下数据保存在你手机本地,不上传:
- 登录令牌(加密保存在 HUKS 硬件密钥库中)
- 日程/任务等模块的离线缓存(以便断网时仍能查看)
- 应用设置(主题、默认视图、显示偏好)
- 附件加密密钥(DEK,由 HUKS 硬件密钥库包裹)
若某台设备不支持 HUKS(如较老系统),应用会降级为"密钥存本地 preferences",并在设置页的「诊断」中如实告知你,不会静默隐瞒。
1.4 我们不收集的信息
明确列出不收集的项目,便于你核对:
- ❌ 位置信息(GPS / 基站 / Wi-Fi 定位)—— 应用未申请任何定位权限
- ❌ 通讯录 —— 应用未申请联系人权限,名册内容完全由你手工录入
- ❌ 通话记录、短信
- ❌ 应用安装列表
- ❌ 剪贴板内容
- ❌ 设备唯一标识符(OAID/IMEI/MAC/SN)
- ❌ 生物识别信息
二、权限使用说明
家书共申请 3 项系统权限,全部为普通权限,均不涉及敏感个人信息:
| 权限 | 用途 | 是否必需 | 拒绝的后果 |
|---|---|---|---|
ohos.permission.INTERNET |
与你自己部署的家书服务器通信,读写数据 | 必需 | 无法登录、无法同步任何数据 |
ohos.permission.GET_NETWORK_INFO |
判断当前是否有网络,断网时显示"离线,显示的是缓存"而不是一直转圈 | 必需 | 网络异常时提示不准确,不影响核心功能 |
ohos.permission.DETECT_GESTURE |
识别左右手握持,自动调整界面方向。不采集、不上传、不记录任何手势数据 | 可选 | 界面方向不自动调整,可手动设置 |
关于地址联想(Map Kit):
在填写日程地点、旅程出发/到达地时,应用会调用华为 Map Kit 的地点自动补全能力(@kit.MapKit)为你提供候选地点。
- 只发送你正在输入的关键词文本(如"星巴克"),不发送任何账号或个人身份信息
- 该能力由华为 HMS Core 在本机提供,受华为隐私政策约束
- 这是可选能力:若未开通或调用失败,输入框会退化为普通文本框,你手敲地址照样能保存,不影响任何核心功能
关于跳转第三方地图导航:
点击日程/旅程地点的「导航」时,应用会尝试调用你手机上已安装的地图应用(高德/百度/华为地图/腾讯地图)。应用只传递地点文字,不传递任何账号信息。是否安装、是否跳转由你决定,应用不会读取这些地图应用中的任何数据。
三、我们如何存储和保护信息
3.1 存储位置
- 服务端:数据存储在你自行部署的家书服务器上(当前为开发者自建的阿里云服务器,域名
family.yangyq.net)。我们(开发者)没有你的数据副本。 - 端侧:见 1.3 节。
3.2 保存期限
- 只要你的账号存在,你的数据就保留,以便你随时查看。
- 你删除某条内容(日程/任务/笔记等)后,服务端立即删除该条记录。
- 你注销账号后,服务端在 7 日内删除该账号及其名下全部数据(含附件文件)。
3.3 安全措施
| 层面 | 措施 |
|---|---|
| 传输 | 全站 HTTPS(TLS 1.2+),不提供 HTTP 明文入口 |
| 密码 | bcrypt 单向哈希,不可逆 |
| 敏感字段 | 手机号、身份证号 AES-256-CBC 加密存储 |
| 附件文件 | 服务端加密存储;端侧下载后以 DEK 加密落地,DEK 由 HUKS 硬件密钥库包裹 |
| 登录令牌 | 存于 HUKS 硬件密钥库 |
| 访问控制 | 每个账号只能访问自己所属家庭的数据;服务端逐条校验归属,不靠前端隐藏 |
| 会话 | 登录态失效即需重新认证;支持在设置页主动退出所有设备 |
说明:任何技术措施都无法保证 100% 安全。若发生安全事件,我们会在发现后 72 小时内通过应用内公告告知你,并说明影响范围与应对措施。
四、我们如何共享、转让、公开披露信息
4.1 共享
我们不会与任何第三方共享你的个人信息,以下三种情形除外:
- 你主动分享的内容:家书支持把某条笔记/任务/账本/日历共享给同一家庭内的其他成员。这是你主动发起的操作,共享范围由你选择,可随时撤销。
- 你主动导出/下载:你把数据导出成文件后自行处置,我们不介入。
- 法律法规要求:仅在依法需要配合司法机关或行政机关调查时,按法定程序提供。
4.2 转让
不发生。若未来因合并、分立等原因需转让,我们会提前告知你,并要求承接方继续受本政策约束;否则将删除或匿名化处理。
4.3 公开披露
不发生。我们不公开任何用户的个人信息。
4.4 第三方 SDK 清单
本应用不集成任何第三方统计、广告、数据分析 SDK。
使用到的系统能力(均为鸿蒙系统内置,非第三方 SDK):
| 能力 | 来源 | 用途 | 是否出网 |
|---|---|---|---|
Map Kit(@kit.MapKit) |
华为 HMS Core | 地点自动补全 | 是(仅关键词) |
HUKS(@kit.UniversalKeystoreKit) |
鸿蒙系统 | 密钥硬件保护 | 否 |
Crypto(@kit.CryptoArchitectureKit) |
鸿蒙系统 | 加解密运算 | 否 |
MediaLibrary(@kit.MediaLibraryKit) |
鸿蒙系统 | 保存附件到相册 | 否 |
ShareKit(@kit.ShareKit) |
鸿蒙系统 | 系统分享面板 | 否 |
Telephony(@kit.TelephonyKit) |
鸿蒙系统 | 拉起系统拨号盘(仅填充号码) | 否 |
BackgroundTasks(@kit.BackgroundTasksKit) |
鸿蒙系统 | 定时后台同步 | 否 |
五、你的权利
依据《中华人民共和国个人信息保护法》,你对自己的个人信息享有以下权利。这些权利在家书里都是自助可用的,不需要发邮件申请:
| 权利 | 在家书里怎么做 |
|---|---|
| 查阅、复制 | 各模块列表直接查看;资源模块支持导出;设置 → 数据导出 可整体导出 |
| 更正、补充 | 任意条目点开 → 编辑 → 保存 |
| 删除 | 任意条目点开 → 删除;删除立即生效 |
| 撤回同意 | 设置 → 隐私 可撤回对可选权限的授权(如握姿识别) |
| 注销账号 | 设置 → 账号 → 注销账号。注销后 7 日内删除全部数据,不可恢复 |
| 获取副本 | 设置 → 数据导出,导出为 JSON/CSV 文件到你指定位置 |
若上述自助途径无法满足(例如你已卸载应用但想删除服务器上的数据),可通过第九节的方式联系我们,我们会在 15 个工作日内响应。
六、未成年人保护
家书是家庭工具,不面向未成年人独立提供服务。
- 未满 14 周岁的未成年人不得自行注册账号。若家庭成员中有未成年人,其信息由监护人代为录入与管理,监护人可随时查看、更正、删除。
- 我们不收集儿童的独立账号信息;名册中记录的未成年家庭成员信息,属于监护人主动录入的家庭内部资料。
- 若我们发现无意中收集了未满 14 周岁儿童的个人信息而未获监护人同意,将立即删除。
七、信息存储地域
你的数据存储在中华人民共和国境内(开发者自建的阿里云中国大陆节点服务器)。
我们不向境外提供你的个人信息。
八、本政策的更新
- 本政策如有实质性变更(例如新增了信息收集项、改变了使用目的、扩大了共享范围),我们会在应用内以弹窗形式提示你,并在你明确同意后才生效。
- 非实质性变更(如文字润色、联系方式变更)会直接更新本页并修改顶部「最后更新」日期。
- 历史版本可向我们索取。
九、联系我们
| 项 | 内容 |
|---|---|
| 开发者 | 杨永全(个人开发者) |
| 联系邮箱 | i@yangyq.net |
| 响应时限 | 收到后 15 个工作日内答复 |
| 我的家书服务地址 | https://family.yangyq.net |
如你对我们的答复不满意,或认为我们的个人信息处理行为损害了你的合法权益,你可以向网信部门、电信主管部门、公安部门、市场监管部门等监管机构投诉举报,也可以向被告住所地有管辖权的人民法院提起诉讼。
十、附录:与权限清单的逐条对照(供审核核对)
| 权限/能力 | 是否申请 | 本政策对应条款 |
|---|---|---|
ohos.permission.INTERNET |
✅ 申请 | 第二节表格第 1 行 |
ohos.permission.GET_NETWORK_INFO |
✅ 申请 | 第二节表格第 2 行 |
ohos.permission.DETECT_GESTURE |
✅ 申请 | 第二节表格第 3 行 |
Map Kit(@kit.MapKit) |
✅ 调用 | 第二节「关于地址联想」 |
| 定位(LOCATION) | ❌ 未申请 | 1.4 节明示不收集 |
| 通讯录(READ_CONTACTS) | ❌ 未申请 | 1.4 节明示不收集 |
| 相机(CAMERA) | ❌ 未申请 | — |
| 相册读写(READ/WRITE_IMAGEVIDEO) | ❌ 未申请 | 1.2 节说明用系统选择器 |
| 麦克风(MICROPHONE) | ❌ 未申请 | — |
| 设备标识符 | ❌ 未申请 | 1.4 节明示不收集 |
本政策自 2026 年 11 月 1 日起生效。