当我的iOS游戏进入后台模式时,它应该可以释放内存吗?

当我的iOS游戏进入后台模式时,它应该可以释放内存吗?,第1张

概述我想提及几个游戏,以展示他们如何处理进入后台模式: Clash of Clans.当它进入后台模式时似乎根本不释放任何内存,实际上我可以打开像Notes这样的轻量级应用程序并返回游戏继续播放而没有任何明显的延迟,这对我来说对用户来说似乎很酷透视. Game of War.游戏立即回到加载屏幕,初始化过程在进入后台模式后立即重新开始,就像重新启动游戏一样,有时非常烦人. 因此,就我的游戏而言,它的平 我想提及几个游戏,以展示他们如何处理进入后台模式:

Clash of Clans.当它进入后台模式时似乎根本不释放任何内存,实际上我可以打开像Notes这样的轻量级应用程序并返回游戏继续播放而没有任何明显的延迟,这对我来说对用户来说似乎很酷透视.

Game of War.游戏立即回到加载屏幕,初始化过程在进入后台模式后立即重新开始,就像重新启动游戏一样,有时非常烦人.

因此,就我的游戏而言,它的平均内存占用量为25 MB(并且通过一些优化会减少),我知道“尽可能多地释放内存”这些东西是为了成为一个好东西iOS平台上的邻居,但考虑到当游戏进入后台模式时释放内存可能会导致我的游戏在进入前台模式时出现“烦人”暂停…

…我应该在进入后台模式时保存进度并暂停游戏而不释放任何内存,或者我应该释放尽可能多的内存并在进入前台模式时再次加载这些资源,并分别加载暂停?

解决方法 正如你自己指出的那样(通过两个游戏作为使用相反策略的例子),你的问题没有唯一的答案.

我认为通过明确定义您希望应用程序支持的用例,可以在给定的案例中找到正确的答案.

例如,正如您所提到的,一个用例可能是“用户可以切换到轻量级应用程序并返回游戏而无需不必要的等待”. (UC1)然后,您还应该有一个轻量级应用程序和参考设备列表,以确保实际满足用例.

另一方面,您可能希望支持稍微不同的用例:“用户将始终回到她离开游戏的位置,除非应用程序被终止,在这种情况下应用程序应该显示主菜单”. (UC2)

在第一种情况下,不释放可能是最好的方法;在第二种情况下,您可能希望最小化应用程序在用户执行其他任务(轻量级或非轻量级)时终止的可能性,以便她可以返回到她离开的位置,即使她必须等待所有要加载的资源.

甚至可能存在中间方法最佳的情况,其中您只释放一部分内存,以便取得平衡.

当然,如果您的应用程序内存占用量太大以至于在切换到大多数设备上的另一个应用程序后几乎立即终止,那么第一个用例(UC1)就没有意义了.在这种情况下,释放内存可能更有意义,因此当您返回时,至少可以节省应用程序加载时间(与资源加载时间相比).

所以,最终,它取决于……

总结

以上是内存溢出为你收集整理的当我的iOS游戏进入后台模式时,它应该可以释放内存吗?全部内容,希望文章能够帮你解决当我的iOS游戏进入后台模式时,它应该可以释放内存吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1072322.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存