我在我的應用程序中有多個活動。 請考慮以下情況......如何知道我的應用程序的活動計數?
活動A調用活動B.乙調用C.當用戶按下返回鍵C生成通知並來到B.現在再次按回來,所以A將被顯示,然後再次返回鍵將終止A以及通知顯示...現在,當用戶按通知圖標活動C得到加載....直到這部分行爲是正確的....現在用戶按下回來,我開始活動A使用我的代碼爲C從通知加載。
另一種情況 活動A調用活動B乙呼叫C.當用戶按下後退鍵C生成通知並來到B.現在用戶按下HOME KEY。然後一段時間後選擇通知圖標,它會顯示活動C.現在用戶按Back鍵,默認情況下它顯示活動B(我想要的)....但我的代碼(作爲C從通知加載)... IM顯示活動A(n用戶按回來,然後顯示活動B)。
我想知道我自己的應用程序的活動計數,以便我可以避免執行我的代碼來啓動活動A(如果它不是1)。
到目前爲止,我已經做到了這一點通過下面的代碼
ActivityManager actM = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> listm = actM.getRunningTasks(1);
int iNumActivity = listm.get(0).numActivities;
但這種代碼的使用需要使用許可GET_TASKS ......我不舒服與此,因爲我不跟蹤任何其他應用程序的數據/活動計數。
如何解決這個問題? 有沒有其他辦法可以達到這個目的?
編輯 如何知道自己的應用程序的活動計數?
感謝您的建議 – JRC 2011-03-25 08:09:36
旋轉和流程死亡可能會導致此問題 – EpicPandaForce 2015-10-07 21:30:03