android - 无法恢复我的 android c++ 游戏的状态(state->savedState 始终为 NULL)
问题描述
我正在使用 android studio 开发我的 android full c++ 游戏,我使用了来自 google 示例(native-activity)的代码。一切正常。但是当我点击模拟器上的 BACK BUTTON 时,游戏进入后台,当我恢复游戏时,游戏从头开始重新开始,而不是继续。我在应用程序的状态中添加我的变量,并在应用程序启动时尝试重新加载我的“游戏状态”。
问题是 state->savedState 总是等于 NULL。即使在恢复应用程序之后。
我在我的 xml 中添加了这一行: android:alwaysRetainTaskState="true" 在我的活动中
解决方案
如果您的游戏被系统抢占,您将获得有效的已保存状态。例如,尝试拨打运行应用程序的电话。
当用户点击返回按钮时,系统不会干预。保存和恢复游戏状态是您的责任。您可以在 app_handle_event 中拦截 AKEYCODE_BACK。
推荐阅读
- spring-cloud-feign - 如何使用 FeignErrorDecoder 摆脱流关闭错误?
- mariadb - MariaDB root 登录问题。(可以登录但不安全)
- flutter - 无法在颤振中使用提供者来处理身份验证流程
- java - 集合排序/二进制搜索方法
- javascript - 如何在树枝中使用 javascript 输出当前日期
- postgresql - 在 Postgres 中使用触发器对更新进行排序和时间戳记
- java - Java中 toLanguageTag() 语言环境方法的替代选项是什么
- python - model_from_json return deserialize(config, custom_objects=custom_objects),如何消除这个错误?
- ionic-framework - 是否可以在指定的 IP 主机和端口上运行 ionic cordova
- kotlin - ``` var num = 200_200 ``` 在 kotlin 中是什么意思?