今天在分析QuickSearchBox中看到一种新的记录log的方式。Debug.startMethodTracing(String filePath).(packages\ apps\QuickSearchBox\src\com\android\quicksearchbox\SearchActivity.java )
该方法将程序运行详细trace信息,包括方法的开始结束、应用运行状况等全部写入一个file的方式记录下来(参考Debug类)。
使用方法:
在onCreate中添加如下代码:
public void onCreate(Bundle savedInstanceState) {
mTraceStartUp = getIntent().hasExtra(INTENT_EXTRA_TRACE_START_UP);
if (mTraceStartUp) {
String traceFile = new File(getDir("traces", 0), "qsb-start.trace").getAbsolutePath();
Log.i(TAG, "Writing start-up trace to " + traceFile);
Debug.startMethodTracing(traceFile);
}
·······
}
在onResume中停止方法的跟踪:
protected void onResume() {
super.onResume();
if (mTraceStartUp) Debug.stopMethodTracing();
}
注意startMethodTracing和stopmethodTracing是成对使用的。在程序开发中可以使用该形式将程序运行状态记录下来,并且在出现bug的时候传回给开发者。
另:在xiaanming的博客上面看到博文--将crash信息保存到SD卡上。也对应用程序开发者很有帮助,有兴趣的朋友可以移步一观。