2012-02-24 6 views
1

Я написал игровое приложение с растровыми изображениями, движущимися по экрану. В нем используется отдельный поток, который записывается непосредственно на холст. На моей Samsung Galaxy Y анимации кажутся гладкими на протяжении всей игры, однако на планшете «Tabtech m7» гладкая графика прерывается прерывистыми зависаниями примерно на половину секунды, а расстояние между ними составляет около трех или четырех секунд. Возможно ли, что это просто особенность (дешевого) планшета, или, скорее, это какой-то аспект моего программирования? И если это я, то как я могу начать диагностировать причину?Графика, испорченная прерывистыми прыжками

ответ

2

Посмотрите в своем журнале, чтобы узнать, работает ли сборщик мусора, когда вы получаете зависания. Если это так, вы можете попытаться выяснить, не является ли это вы или система, которая является распределенной памятью неподходящим образом. В DDMS вы можете взглянуть на Allocation Tracker, возможно, рассказать вам, что происходит.

0

Да, эхо эрсман. Чтобы избежать GC, убедитесь, что вы не размещаете никаких новых объектов в игровом цикле. Кроме того, GC может быть запущен, если вы делаете много преобразований строк (т. Е. Обновляете счет). Как если бы вы делали Integer.toString (10).

Смежные вопросы