getRunningAppProcesses
全部标签 我正在使用以下代码fragment来检查我finish()ed的应用程序是否确实不再运行:ActivityManageram=(ActivityManager)this.getSystemService(ACTIVITY_SERVICE);ListprocList=am.getRunningAppProcesses();for(ActivityManager.RunningAppProcessInfoproc:procList)Log.d(TAG,proc.processName);}令我沮丧的是,我finish()编辑的一些应用程序(在它们的Activity.onCreate()中,
我刚刚测试了我的应用程序和CM、ATMAndroidAssistant等。它们都无法获取正在运行的进程列表,但它们在preOS版本上工作正常。那么AndroidM(5.1.1)是怎么回事呢?请帮忙!am=(ActivityManager)getContext().getSystemService(Context.ACTIVITY_SERVICE);Listlist=am.getRunningAppProcesses();Log.i(TAG,"LQ::examinelist.size()="+list.size()); 最佳答案 我决
我正在尝试确定用户当前可见的应用程序。为此,我使用activityManager.getRunningAppProcesses()方法。我知道Android5.1.1不支持该方法-没关系。一开始它就像魅力一样,我正在遍历列表RunningAppProcessInfos并检查其重要性。tl;博士获取当前前台进程并防止误报的正确方法是什么?列表的顺序是如何完成的-API说它没有指定。有没有办法正确订购它们?我做了什么:不幸的是,ActivityManager返回的列表在每个设备上都不同。一些设备返回多个重要性为100(即FOREGROUND)的信息,即使进程当前不可见。这导致了我有很多误报
Google似乎终于关闭了获取当前前台应用程序包的所有大门。Lollipop更新后,杀死了getRunningTasks(intmaxNum)感谢thisanswer,我用这段代码获取Lollipop以来的前台应用包:finalintPROCESS_STATE_TOP=2;RunningAppProcessInfocurrentInfo=null;Fieldfield=null;try{field=RunningAppProcessInfo.class.getDeclaredField("processState");}catch(Exceptionignored){}Activity