我一直在試圖教自己的Android,並剛剛瞭解到我已經在我的代碼中創建了多個相同的Activity
實例。從概念上講,我知道它在那裏,但是有沒有任何工具(例如DDMS),我可以使用看到我創建了多個實例?如何檢查一個Activity的多個實例是否存在
這也將幫助我瞭解我的Intent
標誌是否正在運行的實驗。
我一直在試圖教自己的Android,並剛剛瞭解到我已經在我的代碼中創建了多個相同的Activity
實例。從概念上講,我知道它在那裏,但是有沒有任何工具(例如DDMS),我可以使用看到我創建了多個實例?如何檢查一個Activity的多個實例是否存在
這也將幫助我瞭解我的Intent
標誌是否正在運行的實驗。
您可以可視化使用以下命令將當前活動堆棧:
adb shell dumpsys activity
它會告訴你是這樣的:
Running activities (most recent first):
TaskRecord{40538e50 #164 A com.xxx}
Run #3: HistoryRecord{xxxx com.xxx/.activities/xxx}
Run #2: HistoryRecord{xxx com.xxx/.activities/xxx}
Run #1: HistoryRecord{xxx com.xxx/.activities/xxx}
TaskRecord{40a89008 #48 I com.android.htcdialer/.Dialer}
Run #0: HistoryRecord{409d91d0 com.android.htcdialer/.Dialer}
一些資源:
Android Debug Bridge (ADB)上Android開發人員。
Android Tools作者:Romain Guy。 (整個演講不是關於亞行,你可以用它做什麼,但是自從他介紹和演示許多調試工具以來,值得花一些時間觀察)。
if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) {
// Activity was brought to front and not created,
// Thus finishing this will get us to the last viewed activity
finish();
return;
}
謝謝,這有很大幫助。你能否指點我一些資源,在這裏我可以研究這個輸出以便更好地理解它? – Debojit
@Debojit:好的,看我的編輯。 –