Skip to content

小游戏运行机制 ​

小游戏在启动、运行以及销毁过程中遵循特定的状态切换逻辑。

前台与后台状态 ​

  • 前台状态:小游戏启动后,界面被展示给用户。
  • 后台状态:当用户点击右上角胶囊按钮关闭小游戏,或者按了设备 Home 键离开平台时,小游戏并没有完全终止运行,而是进入了后台状态。
  • 运行限制:进入后台后,小游戏还可以维持一小段时间的运行。

启动方式 ​

根据小游戏是否已被销毁,启动分为两种情况:

启动方式定义与说明
冷启动 (Cold Start)用户首次打开,或小游戏销毁后被用户再次打开,此时需要重新加载启动。
热启动 (Hot Start)用户已经打开过某小游戏,在一定时间内再次打开,小游戏从后台进入前台。

销毁时机 ​

小游戏不会一直驻留在内存中,以下情况会被销毁:

  1. 长时间后台停留:进入后台一定时间后仍未被打开。
  2. 系统资源回收:当系统内存紧张或小游戏占用资源过高时。
  3. iOS 内存告警:在 iOS 上,若连续收到系统内存告警,会主动销毁小游戏。

优化建议:开发者应使用 sud.onMemoryWarning 监听内存告警事件,并在必要时主动进行内存清理。

再次打开的逻辑规则 ​

用户打开小游戏的预期有以下两类场景:

场景分类 ​

  • 场景 A:打开首页,场景值有以下几项:
场景类型说明
1小游戏主入口
2安卓系统桌面图标
3从另一个小游戏返回
  • 场景 B:打开小游戏指定的某个页面,场景值为除 场景A 以外的其他 当再次打开一个小游戏逻辑如下:
上一次场景当前打开场景最终表现
场景 A场景 A保留原来的状态(继续上次进度)
场景 B场景 A清空页面栈,重新打开首页 (reStart)
场景 A 或 B场景 B清空页面栈,打开指定页面 (reStart)