Android 判断应用是否在前台

来源:互联网 发布:手机测长度软件 编辑:程序博客网 时间:2024/06/06 08:46

Android 判断应用是否在前台

public class MainActivity extends Activity {  @Override  protected void onCreate(Bundle savedInstanceState) {      super.onCreate(savedInstanceState);      setContentView(R.layout.main);      isRunningForeground();  }  public boolean isRunningForeground(){      String packageName=getPackageName(this);      String topActivityClassName=getTopActivityName(this);      System.out.println("packageName="+packageName+",topActivityClassName="+topActivityClassName);      if (packageName!=null&&topActivityClassName!=null&&topActivityClassName.startsWith(packageName)) {          System.out.println("---> isRunningForeGround");          return true;      } else {          System.out.println("---> isRunningBackGround");          return false;      }  }  public  String getTopActivityName(Context context){      String topActivityClassName=null;       ActivityManager activityManager =      (ActivityManager)(context.getSystemService(android.content.Context.ACTIVITY_SERVICE )) ;       List<RunningTaskInfo> runningTaskInfos = activityManager.getRunningTasks(1) ;       if(runningTaskInfos != null){           ComponentName f=runningTaskInfos.get(0).topActivity;           topActivityClassName=f.getClassName();       }       return topActivityClassName;  }  public String getPackageName(Context context){       String packageName = context.getPackageName();         return packageName;  }  

}

0 0
原创粉丝点击