我有一個主菜單,它通過模態segue啓動一個帶SKView/SKScene的視圖控制器。然後我調用dismissViewControllerAnimated,它將應用程序返回到主菜單,但我仍然可以聽到SKScene的聲音效果。當我多次重新啓動SKScene時,應用程序最終崩潰。SpriteKit場景不被釋放
我試過下面的堆積分析教程(http://www.friday.com/bbum/2010/10/17/when-is-a-leak-not-a-leak-using-heapshot-analysis-to-find-undesirable-memory-growth/),但我似乎沒有得到任何地方。我已經確保釋放所有強@properties ...
有什麼想法可能會導致此問題?任何代碼/屏幕截圖會有幫助,還是我可以提供任何信息來幫助縮小問題的範圍?
ARC是否啓用?檢查所有強實例,是否將其中的任何一個存儲在skview/skscene或sk視圖控制器實例之外?另一個常見錯誤是圖結構通用的保留週期,例如,當一個節點對其父節點或兄弟節點之一保持強引用時(使這些節點變弱)。 – LearnCocos2D
是的,使用ARC。回覆。你的第二個問題,任何具有強實例的類將它們設置爲nil,無論是viewDidUnload還是dealloc,是不夠的?我會深入研究代碼來調查你的最後一點。 –
不幸的是,修復所有我能找到的保留週期似乎沒有幫助... –