微信平台能力:登录、广告、分享与生命周期
本手册的发布目标是微信小游戏。它属于小程序生态中的游戏形态,但开发模型与普通业务小程序页面不同。你主要面对引擎画面、Canvas 和平台 API,而不是把 Unity 场景写成 WXML 页面。
按职责看平台能力
| 能力 | 客户端要做 | 后端或平台要做 |
|---|---|---|
| 登录 | 获取平台临时凭据、发起业务登录、显示状态 | 校验身份、管理业务会话 |
| 广告奖励 | 展示、处理结果、恢复界面 | 按可信协议确认权益、幂等发放 |
| 分享 | 组织分享入口与内容 | 处理允许的数据和业务归因 |
| 排行 | 请求和显示榜单、处理授权 | 可信成绩、风控与权限约束 |
| 支付 | 按可用能力发起流程、显示订单状态 | 创建订单、验单、幂等交付与对账 |
| 前后台 | 暂停输入、保存必要状态、恢复显示 | 提供平台生命周期事件 |
是否有权限使用、适用于哪个系统和主体、当前政策允许什么,都要看当前官方说明。尤其支付与激励规则,不能从“SDK 里有函数”推断对所有账号可用。
一条清晰的调用链
业务层应该接收明确结果,而不是了解所有 JS 回调细节。只有真实需要编辑器模拟与微信实现两种路径时,再引入适配接口,避免一开始写庞大的跨平台框架。
网络与存储差异
Unity 通用网络与文件 API 在小游戏中经过适配。检查合法域名、HTTPS、证书、缓存、存储限额与生命周期;普通浏览器的网络测试不能覆盖全部微信规则。
不要把服务端 Secret、平台管理密钥放进客户端。包内代码和资源可以被分析,本地存档也不能成为永久资产可信性的依据。
生命周期统一处理
广告、系统弹窗和进入后台可能打断输入与音频。建议由一个平台入口向玩法发出“暂停交互”“进入后台”“恢复”的通知,避免每个组件自行注册同一事件。
恢复时先确定当前业务状态,再恢复可允许的输入和声音。正在等待的网络、奖励或资源请求要防止重复应用。
不编造平台 API
微信 JS 文档、C# SDK 包装和具体版本可能存在差异。让 AI 提供准确命名空间、方法签名和来源;如果没找到当前签名,就先写接口约定与伪代码,并明确标注。
截至 2026-10-31,本次环境无法抓取微信部分官方文档页面;因此这里讲职责与验证方法,不声称已逐项核验所有平台参数、限额和政策。实际接入从微信小游戏官方入口与官方 SDK继续核对。
验收不要只看成功
检查拒绝授权、网络失败、广告未就绪、取消、重复回调、切换账号、前后台与低版本环境。编辑器替身要醒目标注为模拟结果;上线前切换真实实现并用真实 AppID 验证。