Files
CC-Framework.BriskGameServer/Brisk Unity SDK 实施计划.md

203 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Brisk Unity SDK 实施计划
本文档用于记录 Brisk Unity SDK 的分阶段实施步骤,作为当前项目的实现路线图。
## 阶段 1骨架与约束
目标:
- 固定 SDK 的公开外形
- 固定目录结构与命名
- 建立可编译的基础代码骨架
范围:
- 创建并完善 `Assets/BriskSdk/Runtime` 开发结构
- 创建顶层入口 `Brisk`
- 创建基础对象:
- `BriskOptions`
- `BriskContext`
- `BriskSession`
- `BriskIdentity`
- 创建模块入口占位:
- `Brisk.Auth`
- `Brisk.Player`
- `Brisk.Config`
- `Brisk.Announcements`
- `Brisk.Leaderboard`
- `Brisk.Archive`
- `Brisk.Space`
- 创建基础异常与核心接口占位
- 固定首版方法签名
- 对齐新版后端身份模型:
- 初始化不再要求 `channel / platform`
- 登录改为 `login_provider / login_user_id / code`
阶段完成标准:
- Unity 工程内存在完整 SDK 运行时骨架
- 代码可编译
- 对外 API 入口已固定为 `Brisk.xxx`
## 阶段 2初始化与会话基础
目标:
- 打通 SDK 生命周期入口
- 打通 bootstrap 与本地会话恢复
范围:
- 实现 `Brisk.InitializeAsync`
- 规范化 `BaseUrl`
- 调用 `GET /client/bootstrap`
- 缓存 bootstrap 结果
- 接入本地 token 存储
- 初始化时恢复本地会话
- 可选调用 `player/me` 校验旧会话有效性
阶段完成标准:
- SDK 能完成初始化
- 能缓存 bootstrap 信息
- 能恢复本地登录态
## 阶段 3网络底层与严重错误处理
目标:
- 打稳底层请求能力
- 只统一接管严重错误
范围:
- 实现 `BriskHttpClient`
- 实现统一 JSON 解包
- 实现异常体系
- 实现严重错误识别:
- 维护中
- 封号
- 登录态失效
- 接入默认错误展示器
- 支持项目方自定义严重错误展示 UI
阶段完成标准:
- 请求层可用
- 严重错误可由 SDK 默认 UI 处理
- 普通错误继续交由调用方自行处理
## 阶段 4登录与玩家基础模块
目标:
- 打通玩家态核心链路
范围:
- 实现 `Brisk.Auth.LoginAsync`
- 或更明确地实现:
- `Brisk.Auth.LoginWithUserIdAsync`
- `Brisk.Auth.LoginWithCodeAsync`
- 实现 `Brisk.Auth.LogoutAsync`
- 实现 `Brisk.Player.GetMeAsync`
- 自动附加 Bearer Token
- 管理登录态与相关事件
阶段完成标准:
- 初始化后可完成登录
- 可获取当前玩家信息
## 阶段 5首批高频业务模块
目标:
- 覆盖首版最高频使用场景
范围:
- `Brisk.Config`
- `Brisk.Announcements`
- `Brisk.Leaderboard`
排行榜首版接口:
- `GetTopAsync`
- `GetMeAsync`
- `GetAroundMeAsync`
- `SubmitScoreAsync`
- `GetCurrentSeasonAsync`
- `GetSeasonHistoryAsync`
- `GetSeasonHistoryDetailAsync`
阶段完成标准:
- SDK 已具备主要交付价值
- 排行榜体验可用于首轮接入
## 阶段 6差异化模块
目标:
- 补齐 Brisk 的差异化能力
范围:
- `Brisk.Archive`
- 槽位列表
- 元信息
- 上传
- 下载
- 版本冲突处理
- 校验值处理
- `Brisk.Space`
-`player_id` 查询
-`login_provider + login_user_id` 查询
- 点赞与取消点赞
- 更新自己的空间
- 我的访客
阶段完成标准:
- 云存档和空间模块可实际使用
## 阶段 7收尾与交付增强
目标:
- 让 SDK 达到可交付、可接入状态
范围:
- 默认本地存储实现
- 默认错误展示 UI 完善
- 日志开关与调试信息
- 示例代码
- Sample Scene
- 文档补充
- 自测清单
补充约束:
- 当前仓库作为 Unity 原始开发工程,活代码放在 `Assets/BriskSdk`
- 正式对外发包时,再从发布分支整理出 `PackageSource/com.foldcc.cc-framework.BriskGameServer` 子目录作为 UPM 包
阶段完成标准:
- SDK 可以给外部开发者试接入
## 暂缓项
以下内容不阻塞首版主线:
- 弱网模式与标准模式双策略
- 更复杂的自动重试策略
- 多套默认 UI 风格
- 管理后台 SDK
建议:
- 首版先完成标准模式
- 主线可用后再评估弱网模式