2011-10-25 125 views
1

我的遊戲在iOS5上使用cocos2d崩潰後,在離開背景後離開一段時間後崩潰。我想知道標準/最佳做法是什麼,處理髮送到後臺的應用程序。我在一段時間後終止它嗎?我看到一些遊戲在很長一段時間恢復時會拉起一個加載屏幕,但是當你立即恢復時,它會直接進入遊戲。他們在恢復時加載了什麼?如何防止應用程序/遊戲在恢復後崩潰

任何正確的方向指針將不勝感激。

感謝 AC

回答

1

您可以通過adding UIApplicationExitsOnSuspend to your Info.plist退出後臺執行的。

除此之外,確保您的應用在恢復執行時不會崩潰是您的工作。你必須明白,你的應用程序基本上進入暫停狀態。這意味着它應該卸載所有不需要的資源,否則系統可能會終止您的應用程序的進程。

在您的應用程序委託中,您應該對applicationDidBecomeActive消息做出響應並做出相應響應,以便您的應用程序能夠在沒有任何問題的情況下恢復執行。這可以包括加載任何卸載的資產並檢查系統設置(即語言環境,Game Center用戶等)是否發生了變化。

您也可以register a didBecomeActive UINotification,這樣應用程序恢復時應用程序中的任何類都會收到通知。

+0

謝謝。我現在知道了。在applicationWillResignActive上會調用以下內容嗎? \t [[CCTextureCache sharedTextureCache] removeUnusedTextures]; \t [[CCSpriteFrameCache sharedSpriteFrameCache] removeUnusedSpriteFrames]; – AbhinavVinay

+0

是的,但theres導演「清除」消息,清除所有緩存 – LearnCocos2D

+0

但我想清除一切??那麼當我恢復正常時,這將需要我重新加載所有內容?這安全嗎? – AbhinavVinay