1. 程式人生 > >小技巧--獲取當前前臺顯示Activity

小技巧--獲取當前前臺顯示Activity

系統提供的有ActivityManager,可供我們用來獲取當前系統棧中正在執行的執行緒,並訪問系統的Activity棧,大致方法如下:

ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE); 
List<RunningTaskInfo> cn = am.getRunningTasks(1); 
RunningTaskInfo taskInfo=cn.get(0); 
ComponentName name=taskInfo.topActivity; 
Activity foregroundActivity = (Activity) (Class.forName(name.getClassName()).newInstance());    

當然,單純通過上面這個方法得到的Activity有可能不是當前App的Activity還需要通過包名篩選一下。