Java 间歇性跳跃破坏的图形

Java 间歇性跳跃破坏的图形,java,android,Java,Android,我编写了一个游戏应用程序,其中位图在屏幕上移动。它使用一个单独的线程直接写入画布。在我的三星Galaxy Y上,整个游戏中的动画看起来都很流畅,但在“Tabtech m7”平板电脑上,流畅的图形似乎会被持续约半秒、间隔约三四秒的间歇性冻结所打断。这可能只是(便宜的)平板电脑硬件的一个功能,还是更可能是我编程的某个方面?如果是我,我该如何诊断原因呢?查看您的日志,看看当您得到冻结时,垃圾收集器是否正在运行。如果是这样,您也许可以尝试找出是您还是系统以不适当的方式分配内存。 在DDMS中,您可以查看

我编写了一个游戏应用程序,其中位图在屏幕上移动。它使用一个单独的线程直接写入画布。在我的三星Galaxy Y上,整个游戏中的动画看起来都很流畅,但在“Tabtech m7”平板电脑上,流畅的图形似乎会被持续约半秒、间隔约三四秒的间歇性冻结所打断。这可能只是(便宜的)平板电脑硬件的一个功能,还是更可能是我编程的某个方面?如果是我,我该如何诊断原因呢?

查看您的日志,看看当您得到冻结时,垃圾收集器是否正在运行。如果是这样,您也许可以尝试找出是您还是系统以不适当的方式分配内存。
在DDMS中,您可以查看分配跟踪器,可能会告诉您发生了什么。

是的,回应erbsman。为了避免GC,请确保在游戏循环中没有分配任何新对象。另外,如果你做了很多字符串转换(比如,更新分数),就像做Integer.toString(10)之类的事情一样,GC也会被启动