2012-01-17 76 views
0

我有一個有點簡單的遊戲,我正在做,現在我正在測試我認爲設備上的應用程序的裸骨版本,我不斷碰到崩潰,過度。我在調試實際設備方面相當新,所以任何幫助都會很棒。應用程序崩潰在設備上的cocos2d應用程序時什麼都沒有發生

真正奇怪的部分是,它通常會在沒有任何射擊時崩潰。沒有接觸,沒有動畫,沒有任何事情發生。我試過運行儀器來檢查內存泄漏。我發現的所有內容都是在菜單場景中創建的兩個對象。

我使用

Game *game = [Game nodeWithPlayers:arr Tutorial:NO]; 
[[CCDirector sharedDirector] replaceScene:game]; 

其中的一些數據(主要是#的玩家)發送到遊戲場景變化的場景。我在我的菜單場景的dealloc中發表了一條評論,並且它發生了火災,所以我知道發生了這種情況。

作爲內存泄漏報告的兩個對象是我的菜單管理器對象,它可以幫助菜單場景中的某些菜單動畫和位置,以及我的SoundManager對象,它目前只在按鈕上播放幾個wav文件, 9mb mp3作爲背景音樂。我只是不明白爲什麼如果菜單場景被釋放,這些對象甚至持續存在......

我不知道從哪裏開始w /調試這些看似隨機的崩潰。有什麼建議?

+0

什麼是它崩潰時的控制檯輸出。 – Joe 2012-01-17 05:58:15

+0

唯一的錯誤我得到的是什麼也沒有在控制檯典型EXC_BAD_ACCESS在所有。 – rnystrom 2012-01-17 15:33:07

回答

1

如果它在Simulator上沒有崩潰並且崩潰是「無聲的」,它似乎是內存開銷。如果您一次加載所有資源,則控制檯中不會有內存警告。

嘗試使用樂器中的活動監視器運行應用程序 - 它測量真實的內存使用情況。並嘗試跳過內部CCTexture2D類評論加載紋理(glTexImage2D(...)

+0

好吧,我可能已經確定這是問題所在,我該如何解決這個問題呢?我可以通過評論'glTextImage2d(...)'來玩遊戲,沒有崩潰。 – rnystrom 2012-01-17 18:55:17

+0

正如你所說'EXC_BAD_ACCESS'發生崩潰,這不是標準的內存開銷問題。你能在崩潰時顯示所有的控制檯輸出嗎? – brigadir 2012-01-18 07:20:49

相關問題