2011-10-28 112 views
1

我有iOS設備的遊戲。幾天之後,我在不同設備中遇到內存問題。我正在做的是: 1.從設備上刪除我的遊戲。 2.「Product-> Clean」它在xCode中。 3.在設備上運行它。 4.查看儀器(活動監視器)中的內存。 5.拿另一個設備。 6.從第一步開始重複。奇怪IOS內存問題

iPad 1與iOS 4.3.1:遊戲工作正常,主菜單使用51 MB內存,第一級105 MB。 帶有iOS 5的iPad 1,帶有iOS 5的iPod 4:遊戲崩潰,主菜單爲77 MB,第一級爲130+ MB。

有沒有人有同樣的問題?是因爲更新的iOS嗎?

10/31/2011 六個小時的斷點和設備之間的跳躍使我這個: 中的iOS 4.3.1 glTexSubImage2D功能,可以至極的openGLES.framework發現,從來沒有任何分配內存。

在IOS相同的功能調用5.0

glTexSubImage_Exec - >

gleSynchronizeTextureLevelOnCurrentDevices - >

gfxUploadPluginTextureLevel - >

gfxAllocateTextureLevel - >

的malloc

畢竟,我有不同的像素參數在glTexImage2DglTexSubImage2D,什麼導致每個sprite的額外30%的內存。在4.3.1差異像素參數是好的,但在5.0它不是。我不知道這是否是一個錯誤。 感謝所有。

+1

如果有崩潰找出原因。發佈控制檯崩潰消息和堆棧跟蹤。 – zaph

回答

0

你需要弄清楚你的記憶在哪裏。儀器是一個好的開始,但你可能想要在各個點採取堆積和比較。 (我假設你已經使用Leaks儀器來識別真正的泄漏,而不僅僅是內存膨脹。)

+0

好的,謝謝。我解決了這個問題。解決方案在問題文本中 –