Logcat

在系统Logcat中,当主线程卡顿时,系统也会输出相关Log。例如:

  1. XX-XX XX:XX:XX.XXX 900-900/com.xys.preferencetest I/Choreographer: Skipped 50 frames! The application may be doing too much work on its main thread.
  2. XX-XX XX:XX:XX.XXX 1766-1766/com.xys.preferencetest I/Choreographer: Skipped 50 frames! The application may be doing too much work on its main thread.

有经验的开发者在开发过程中,可以根据这些Log判断当前运行的代码是否存在性能问题。例如,笔者拥有一台Nexus5手机,运行一个App,Log频繁发出GC的信息和主线程过忙的信息。这时候代码性能肯定是有问题了,需要好好看看代码是否有优化的空间。