# 功能及平台范围

本页把星线 App 的主要能力与交付边界放在一起比较。表格表示截至 2026-10-23 可从当前源码确认的入口或模块，不表示每个版本、设备和生产账号都已完成端到端验收。实际发布条件见[版本发布](https://document.thestarline.cn/app/releases.md)。

## 功能矩阵

| 能力 | iOS | Android | 边界与后续核验 |
| --- | --- | --- | --- |
| 星线账户登录 | 原生发起、系统授权浏览器、回跳换票 | 原生发起、系统授权浏览器、回跳换票 | 两端有 PKCE 及会话恢复；iOS 真实账号完整链路仍需独立验收 |
| 单聊与群聊 | 会话、消息和状态界面 | 会话、消息和状态界面 | 网络、成员权限和服务状态决定可用性 |
| 消息媒体 | 图片与普通文件上传引用 | 图片与普通文件上传引用 | 专用视频选择与播放属于新事；附件 E2EE 尚未闭环 |
| 新事 | 发布、阅读及互动入口 | 发布、阅读及互动入口 | 与聊天媒体有独立的数据及权限边界 |
| 城市贴纸 | 素材、选择和位置适配 | 素材、选择和位置适配 | 44 城素材三端一致；真实定位与网络场景另验 |
| 本地记忆 | 本机加密主体与附件、主题模板 | 本机加密主体与附件、主题模板 | 没有跨设备云同步；转出与恢复能力分开核验 |
| 医疗健康记录 | 结构化模板和关联记录 | 结构化模板和关联记录 | 个人归档，不是诊断、健康平台接入或提醒服务 |
| 本地任务与收藏 | 个人日常入口 | 个人日常入口 | 本机功能，不是星企企业组织/频道功能 |
| 语音与视频通话 | LiveKit、系统通话相关接入 | LiveKit、通话界面相关接入 | 两台真机跨网络、后台与锁屏来电尚需验收 |
| MLS 加密协议 | 有独立传输模块及设备密钥准备 | 未发现原生 OpenMLS 主消息接入 | 默认聊天路径不能标为全量已验收 E2EE |

双端共享产品方向，但界面组织、系统权限、后台执行和安全存储分别使用平台机制。不能用 Android 一次历史成功替代 iOS 验收，也不能用模拟器截图代替实体设备权限与推送结果。

## 双端差异应怎样核对

| 场景 | 当前需要区分的实现 | 详细说明 |
| --- | --- | --- |
| 原生登录中断 | iOS 保存 API 基地址与待换票 ticket；Android pending 字段及清理时机不同 | [登录](https://document.thestarline.cn/app/authentication.md)、[生命周期](https://document.thestarline.cn/app/client-lifecycle.md) |
| 个人任务筛选 | iOS 有今天/逾期/完成及搜索；Android 当前待办/已完成/全部，首页今日统计另有截止条件 | [工作台](https://document.thestarline.cn/app/workbench.md) |
| 记忆序列化 | iOS 与 Android 的记录字段、日期表示和加密文件封装不同 | [本机格式](https://document.thestarline.cn/app/local-data-formats.md) |
| 新事视频 | 服务端支持单个Range，但当前客户端先完整下载后播放 | [新事](https://document.thestarline.cn/app/moments.md) |
| 实时位置停止 | 页面操作与持续通知停止分支的本机/远端顺序不同 | [位置共享](https://document.thestarline.cn/app/location-sharing.md) |
| MLS阻塞恢复 | 服务端有重建与确认契约，不等于客户端会自动完成所有重键 | [MLS协议](https://document.thestarline.cn/app/mls-protocol.md) |

这些差异影响测试步骤与失败恢复。改进任一端时应先明确目标行为，再核对相同字段在另一端如何保存、搜索、展示和转出，不能仅以同一功能名称认定数据格式互换。

## 哪些功能需要账号

在线聊天服务以聊天 Bearer token 识别用户，再按会话成员、好友关系、群成员、媒体所属和通话参与者检查权限。Account 负责身份认证，聊天服务负责在线业务授权；知道公开 API 地址或对象 ID 不赋予访问权。

好友申请、临时码、删除、屏蔽和群成员变化有各自的消费与清理顺序。新事的 public 指已登录 API 用户可见；媒体还要通过帖子或消息可见性检查。个人群的群主退出、本人隐藏聊天、退群和完整解散不属于同一种操作，见[好友与群](https://document.thestarline.cn/app/contacts-and-groups.md)与[新事](https://document.thestarline.cn/app/moments.md)。

记忆主体存于设备，个人任务和收藏也有本地数据边界。登录、退出、清理本机和服务端账号处理需要分别理解，详见[数据模型](https://document.thestarline.cn/app/data-model.md)与[本地记忆](https://document.thestarline.cn/app/local-memory.md)。

## 网络与离线

在线消息和新事需要后端。事件流帮助客户端重新获取状态，但它不是聊天正文的永久备份。发送队列、重试与去重用于恢复操作，不等于所有离线操作都会自动成功。

本机记忆可以在设备上保存与读取；涉及服务器识别、转出授权或其他网络功能时仍需要相应服务。服务器识别与本地规则提取是不同路径，提交到模型的字段与隐私边界需按[本地记忆](https://document.thestarline.cn/app/local-memory.md)和[安全和隐私](https://document.thestarline.cn/app/security-and-privacy.md)核对。

## 按数据类型比较上限

聊天文件、聊天贴纸、新事图片/视频与本机记忆附件由不同入口控制。普通聊天上传文件为10MiB级限制，本机单个记忆附件为20MiB级限制，新事视频另有30MiB级限制；具体字节值、数量、账号总量和宽高要求见[限制与错误](https://document.thestarline.cn/app/limits-and-errors.md)。在界面显示“附件过大”时，需要指出当前是哪一种附件，而不是用一个通用大小覆盖所有功能。

同样，消息正文、医疗长字段、标题和 JSON 请求整体都有各自限制。原生字符串长度与服务端码点计数也可能不同，前端通过不代表服务端一定通过。字段长度、类型与迁移细则见[本机格式](https://document.thestarline.cn/app/local-data-formats.md)和[医疗健康记录](https://document.thestarline.cn/app/medical-records.md)。

## 检查一个功能是否完整可用

先检查代码入口和运行依赖，再验证正常路径、权限拒绝、重复操作、断网、中断恢复和升级后的数据兼容。网络功能还需核对服务端实际状态，本机功能还需核对重新打开与密钥可用性。音视频与推送必须补充两台真实设备及跨网络场景。

每个结论应包含平台、构建、系统版本、环境、操作步骤和证据。详细矩阵见[测试场景](https://document.thestarline.cn/app/qa-matrix.md)，出现异常后按[故障处置](https://document.thestarline.cn/app/incident-runbooks.md)分阶段处理。仅有源码或历史记录的能力继续标明范围，不因本页文字增加而自动改变交付状态。

## 单独列出的未交付事项

- watchOS 独立联网应用尚未交付，当前 iOS 工程不能作为 watchOS 成品说明。
- iPad 可用性与 App Store 审核需单独处理；已进入审核流程不等于已公开上架。
- 当前记忆没有设备间云同步，没有可据转出 JSON 推导的完整导入恢复。
- 没有已交付的系统健康平台自动写入、医疗诊断或用药推送提醒。
- 全量聊天与附件 E2EE、跨网络音视频和后台来电不能仅凭模块存在认定完成。

## 与其他星线产品的关系

星线 Account 是共享身份系统。星企是独立企业产品；同一聊天服务存在的 `/enterprise/*` 接口不表示星线 App 前台已经提供企业组织、企业频道、审批或企业待办。星线智联小程序有独立上传与发布状态，当前流程已暂停。各产品共享组件时，仍按各自的客户端、权限和发布记录判断可用性。
