我必须使用 onPause/onStart/onDestroy

Do I have to use onPause/onStart/onDestroy

我正在 Unity 中开发一款移动益智游戏,当我将游戏退出到主屏幕并 return 返回时 - 游戏从同一位置继续并且似乎没问题(没有覆盖 onPause/onStart), 我错过了什么吗?退出时是否需要存储变量?人们通常储蓄什么?怕以后有bug

I missing something?

Do I need to store variables when exit?

I'm afraid to have bugs in the future.

是的,你会的。您将 运行 陷入丢失变量的问题。您有责任执行此操作。仅仅因为现在一切看起来和工作正常并不意味着什么。该行为在不同的平台和设备上是不同的,并且还取决于有多少应用程序已经 运行 在后台运行 + 当前可用的 ram。通常,您使用 class 将所有重要变量存储在 class 中,然后序列化并保存它们。

请参阅 post,其中解释了如何执行此操作并提供了一个包装器以轻松保存和加载任何 class。当 Unity 即将被中断时,您必须保存您的游戏状态。这些是可用于检测此问题的函数,您必须了解:

您必须决定使用哪些来保存数据。有时,由于每个平台中每个人的行为,您必须使用其中的多个。值得阅读每个文档的文档,以了解它们在每个平台上的作用。