【发布时间】:2011-10-25 17:41:25
【问题描述】:
我使用 cocos2d 制作的游戏在离开一段时间后从后台恢复后在 iOS5 上崩溃。我想知道处理发送到后台的应用程序的标准/最佳实践是什么。我会在一定时间后终止它吗?我看到有些游戏在您长时间恢复后会弹出加载屏幕,但当您立即恢复时,它会直接进入游戏。他们恢复时加载了什么?
任何指向正确方向的指针将不胜感激。
谢谢 交流
【问题讨论】:
标签: iphone cocos2d-iphone ios5 multitasking
我使用 cocos2d 制作的游戏在离开一段时间后从后台恢复后在 iOS5 上崩溃。我想知道处理发送到后台的应用程序的标准/最佳实践是什么。我会在一定时间后终止它吗?我看到有些游戏在您长时间恢复后会弹出加载屏幕,但当您立即恢复时,它会直接进入游戏。他们恢复时加载了什么?
任何指向正确方向的指针将不胜感激。
谢谢 交流
【问题讨论】:
标签: iphone cocos2d-iphone ios5 multitasking
您可以通过adding UIApplicationExitsOnSuspend to your Info.plist 选择退出后台执行。
除此之外,确保您的应用在恢复执行时不会崩溃确实是您的工作。您必须了解您的应用程序基本上进入了暂停状态。这意味着它应该卸载所有不需要的资源,否则系统可能会终止您的应用进程。
在您的应用委托中,您应该回复applicationDidBecomeActive 消息并做出相应的响应,以便您的应用能够继续执行而不会出现任何问题。这可能包括加载任何已卸载的资产并检查系统设置(即区域设置、Game Center 用户等)是否已更改。
您也可以register a didBecomeActive UINotification,以便在应用应恢复时通知您应用中的任何课程。
【讨论】: