2
\$\begingroup\$

I am building a new game with AndEngine and for some reason i keep getting this debug statement in the Logcat:

01-31 21:29:50.503: I/Choreographer(697): Skipped 152 frames! The application may be doing too much work on its main thread.

Im not really sure what is causing this error exactly during my game. I am checking a lot of collisions, but they arent initiated until after the game play scene has started.

I also noticed on my Galaxy S3 the game causes my phone to "flicker" when swiping changing home screens and pulling down the task bar at the top.

I think this error has something to do with it, but I am not sure. What do you guys think?

Also each time the user goes to another level I initialized the collision detectors all over again. But I don't unregister or stop the last collisions that were started. I thought they would be automatically cleaned up when the new one is initialized.

What do you guys think?

\$\endgroup\$
1
\$\begingroup\$

The android platform is a heavily multi-threaded environment designed to distribute the workload. Whenever assets or systems are not being used in the game, they should always be released or deleted unless there is a very specific reason why they need to remain active. Cleaning up your collision process and freeing up used memory at the end of a scene should be a standard practice for you.

The error message you post leads me to believe that the app is skipping frames to maintain a specific rate of functionality. Further research has lead me to the following link. I suggest starting the rest of your investigation here.

https://stackoverflow.com/questions/11266535/what-is-android-choreographer

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.