阅读主题
远程账号体验与玩家协议
已接入远程 mountAuth() 和 mountGameOverlay() 的游戏,后续打开界面时读取平台发布的兼容版本。登录、注册、协议阅读、浮球与账号菜单的本轮调整无需游戏重新打包。正在输入密码的界面不会被中途替换。
这不替代首次接入:游戏仍负责可信授权交换、游戏会话恢复、角色绑定及常驻壳挂载。直接自绘账号表单、固定旧 UI 文件或使用 uiMode:'bundled' 的游戏,不会自动使用新远程外观。原生 Android / iOS 桥接与安装包更新另有边界。
登录与注册
登录支持账号密码,以及服务真实开放时的手机验证码。账号密码也可使用已验证绑定的手机号;纯数字账号不自动转换成短信登录。未注册手机号不会被登录接口隐式注册。
界面按当前应用真实开放的能力提供切换入口,并在可用时恢复上次使用的登录方式。短信登录分两步:填写手机号并点击“下一步”发送验证码,再填写验证码登录;可以返回修改手机号。修改号码后原验证码不会用于新号码,重发受服务返回的倒计时约束。短信服务未开放时,不显示可用的验证码登录入口。
注册是独立操作。基础注册提供账号、密码与确认密码;绑定手机可选,需服务已开放且验证码有效。注册成功后由玩家主动继续登录,仍执行正式授权交换,不将注册结果作为游戏登录会话。
密码显隐、输入错误定位、验证码倒计时及返回协议后的草稿保留都在组件内处理。明文密码不写入设备长期存储。SDK 的 restoreSession() 应由游戏启动流程调用并核验,账号 UI 不会替宿主擅自进入游戏。
玩家在弹窗内阅读协议
首次遇到某个应用、协议版本及测试范围的组合时,账号窗口先展示协议引导。玩家可以阅读正文、暂不同意,或明确点击“同意并继续”。打开、滚动、关闭正文均不会触发同意。
引导确认缓存只记“此范围的引导已确认”,用于下次打开时减少重复引导;它不是玩家同意回执,也不包含账号或密码。每次重新挂载账号窗口都不会根据缓存自动勾选协议,玩家仍需明确确认。
同一次账号窗口内的明确同意可在登录、注册及正文返回之间复用。注册成功后的本人账号登录不要求重复勾选;主动修改账号、撤回同意、取消或退出会清除当前同意状态,协议版本或测试范围变化也需要重新确认。浏览器禁止存储时仍能阅读和确认,只是下次打开可能再次出现首次引导。
用户协议、隐私政策分别在游戏内的独立阅读弹窗打开。返回时保留表单和焦点,不跳转开发者文档。打开、滚动、关闭不代表同意;协议加载失败可重试,未取得条款时不能提交。
远程 UI 读取:
http
GET /api/account/agreements?appId=当前客户端AppID响应包含 appId、gameId、documents、testing 和 consentVersion。正文为结构化纯文本段落,包含标题、运营主体、文档版本、生效日期及 SHA-256 摘要。测试授权说明单独展示,不替代正式服务协议与隐私政策。
玩家勾选后,登录或注册提交该次展示的 legal:… 版本值。不要在游戏封装的 authenticate(input) 中把 input.consentVersion 改回固定值。历史选项中的 termsUrl、privacyUrl 仍供旧界面兼容;新远程界面以正文服务为准。
未登录时的账号客服
账号窗口右上角“账号客服”在游戏内打开独立客服弹窗,玩家不必先登录才能求助。此入口加载 https://starai.art/support/?mode=guest,不携带游戏账号、长期令牌或登录票据,也不默认复用之前的玩家客服身份。
访客可提交账号或其他问题,查看该访客会话的回复;不能读取玩家历史工单或关联订单。当前未登录入口由平台账号客服接待。游戏内容问题在登录后通过游戏客服入口处理,仍遵循游戏归属和开发者客服权限。客服采用工单留言方式,页面载入不代表人工实时在线。
客服弹窗可关闭、返回登录或重新加载。关闭后卸载嵌入页;浏览器允许会话存储时可在当前标签页恢复访客记录。存储不可用时只能保留当前嵌入页内的临时身份,关闭或刷新后可能无法恢复旧访客工单,页面会提示此限制。不要在问题说明中填写密码或验证码。
开发者维护本游戏条款
开发者控制台 → 选择应用 → 接入工作台 → 账号能力 → 玩家协议与隐私政策。
平台账号条款只读。游戏运营方可增加本游戏的用户协议与隐私政策,两份一起发布,填写实际运营主体与正文。协议独立于接入能力草稿,点击“发布协议”立即生效。未保存时切换页面有提醒,预览不等于发布。
| 内容 | 限制 |
|---|---|
| 两份游戏协议 JSON | 合计不超过 24,000 UTF-8 字节 |
| 标题 / 运营主体 / 版本 | 最多 100 / 120 / 40 字符 |
| 每份章节 / 每节段落 | 1–30 节 / 1–20 段 |
| 章节标题 / 单段正文 | 最多 100 / 3,000 字符 |
| 正文格式 | 纯文本,不执行 HTML、脚本或外部嵌入页 |
修改已发布的正文需要新的文档版本号;同一文档版本不能对应不同内容。配置采用版本锁与请求幂等,避免多人覆盖以及超时重复发布。管理员可在应用详情操作,开发者只能维护自己拥有且已授予接入配置权限的应用。
版本变化与同意记录
| 错误码 | 处理 |
|---|---|
AGREEMENT_VERSION_CHANGED | 保留输入,重新读取条款,取消原勾选,请玩家重新确认 |
AGREEMENT_TESTING_SCOPE_REQUIRED | 正确凭据对应测试账号,读取 testing=true 的条款并重新确认 |
AGREEMENT_STANDARD_SCOPE_REQUIRED | 正确凭据对应普通账号,读取 testing=false 的条款并重新确认 |
CONFIG_VERSION_CONFLICT | 编辑器刷新核对最新配置后再提交 |
AGREEMENT_DOCUMENT_VERSION_CONFLICT | 正文发生变化,需要更新对外文档版本 |
testing=true 仅用于请求测试范围说明,不创建测试身份、不开放正式资产,也不能绕过应用联调开关和来源限制。专用本地来源默认读取测试范围,登录与注册仍只接受本游戏测试身份。
只有成功注册或授权才保存同意回执,记录用户、应用、版本、摘要与时间,保留可追溯正文。旧客户端的 2026-09 请求继续兼容,但回执明确标记为旧标识,不声称用户阅读过新版正文。成功注册的原请求编号重试可恢复原结果,不因随后发布协议而重复注册。
浮球与账号菜单
浮球使用统一矢量 Logo、轻量边缘光和跟手拖动。松手就近吸边,闲置半收边;拖入底部隐藏区域后,同侧窄标签可以恢复。位置按应用保存,窗口变化重新约束。减少动态、后台页面及收边状态会停止非必要动画。
点击浮球先打开紧凑菜单,按真实会话提供账号安全、订单、客服与消息入口,再进入完整账号中心。切号由 SDK 注销平台身份,再调用宿主清理游戏会话。订单与测试资产限制不因外观改版而改变。
摇杆、技能栏等游戏专有区域需要宿主提供边界信息;SDK 不能自动理解游戏画面。可选避让配置是本次远程实现的扩展能力,未提供时仍支持自由拖动与默认停靠。旧的 v0.6.0 下载包类型不包含该新可选字段,既有游戏无需为默认行为升级。
完整生命周期见常驻浮球与游戏账号中心。支付测试仍使用统一支付入口。