Skip to main content

App crashing in cocos2d app on device when nothing happening



I have a somewhat simple game that I'm making and now that I'm testing what I consider a bare bone version of the app on devices, I keep getting crashes over and over. I'm fairly new at debugging on actual devices, so any help would be great.





The really weird part is that it will usually crash when nothing is firing. No touches, no animations, nothing is happening. I've tried running Instruments to check for memory leaks. All I find are two objects that are both created in the menu scene.





I'm changing scenes using







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

[[CCDirector sharedDirector] replaceScene:game];







which sends some data (mainly # of players) to the Game scene. I put a comment in the dealloc of my menu scene and it fires, so I know that's happening.





The two objects that are reported as memory leaks are my MenuManager object that helps w/ some menu animations and positions in the menu scene, and my SoundManager object which at the moment only plays a couple bit wav file on buttons and a 9mb mp3 as background music. I just don't understand why those objects are even persisting if the menu scene is deallocated...





I'm not sure where to start w/ debugging these seemingly random crashes. Any advice?


Comments

  1. If it doesn't crash on Simulator and the crash is "silent", it seems to be memory overhead. And if you load all resources at once there will be no memory warnings in console.

    Try to run the app with Activity Monitor in Instruments - it measures real memory usage. And try to skip loading textures (inside CCTexture2D class comment glTexImage2D(...).

    ReplyDelete

Post a Comment

Popular posts from this blog

Wildcards in a hosts file

I want to setup my local development machine so that any requests for *.local are redirected to localhost . The idea is that as I develop multiple sites, I can just add vhosts to Apache called site1.local , site2.local etc, and have them all resolve to localhost , while Apache serves a different site accordingly.