[英]Measuring Activity start time using method tracing inaccurate?
根據Logcat的說法,我的活動(使用相機)開始得很慢:
08-21 21:51:56.672: I/ActivityManager(488): Displayed com.blabla/.activities.TakePhotoActivity: +1s472ms
因此,我決定使用方法分析來查看問題出在哪里(這是緩慢的Activity開始的地方):
public void onClick(View v) {
Debug.startMethodTracing();
Intent intent = new Intent(getApplicationContext(), TakePhotoActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.enter_from_right, R.anim.exit_to_left);
}
並在TakePhotoActivity中的onResume中調用:
protected void onResume() {
super.onResume();
cameraView.onResume();
Debug.stopMethodTracing();
}
但是,令我驚訝的是,Traceview僅顯示了260ms的方法調用,所以我在某處丟失了1秒以上!
我如何知道這段時間發生了什么?
這是一個關於如何在Android應用程序上使用跟蹤視圖的很好的教程,只需運行它並檢查哪些子方法導致了時間損失,它就很好地體現了時間使用情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.