[英]Android traceview not working or only logs 900 ms?
在我的默認視圖中,我有:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Debug.startMethodTracing(Environment.getExternalStorageDirectory()+"/PosLogistics.trace", 1000000000);
在這里停下來:
protected void onStop()
{
super.onStop();
Debug.stopMethodTracing();
}
android目標是2.2。 在Motorolla 2.3上運行時,我可以追蹤900毫秒。 在Samsung Galaxy(4.0)和Sony Xperia(4.0)上運行時,應用程序會在啟動時立即關閉。 logcat的最后一個條目是
02-15 05:25:19.940:I / dalvikvm(8740):TRACE STARTED:'/ mnt / sdcard /PosLogistics.trace'976562KB
根據這個帖子: Traceview最大記錄時間? 跟蹤受設備RAM的限制。 可能會解釋Motorolla 900 ms,但是Galaxy和Xperia有什么問題?
您正嘗試為跟蹤緩沖區分配1000000000
字節 ~1GB。 我認為任何系統都不允許你這樣做。 它用於內存緩沖區大小,而不是磁盤。
請參見vm / Profile.cpp第383行。
state->buf = (u1*) malloc(bufferSize);
跳過給出緩沖區大小。 這將默認為8MB,應該足以滿足您的需求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.