/通过判断手机里的所有进程是否有这个App的进程//从而判断该App是否有打开privatebooleanshouldInit(){//通过ActivityManager我们可以获得系统里正在运行的activities//包括进程(Process)等、应用程序/包、服务(Service)、任务(Task)信息。ActivityManager am = ((ActivityManager) getSystemService(Context.ACTIVITY_SERVICE)); List processInfos = am.getRunningAppProcesses(); String mainProcessName = getPackageName();//获取本App的唯一标识intmyPid = Process.myPid();//利用一个增强for循环取出手机里的所有进程for(RunningAppProcessInfo info : processInfos) {//通过比较进程的唯一标识和包名判断进程里是否存在该Appif(info.pid == myPid && mainProcessName.equals(info.processName)) {returntrue; } }returnfalse; }
网友评论