如何检查我的应用程序是否正在运行

时间:2011-07-28 11:46:50

标签: android android-activity exit

  1. 如何检查我的Android应用程序是否已经运行以防止双重启动?

  2. 如何使“硬退出”阻止我的应用在后台运行?

2 个答案:

答案 0 :(得分:1)

  1. 不可能进行“双重启动”。如果您的应用程序已经运行,如果您尝试启动另一个实例,那么您将恢复第一个启动实例。

  2. 当应用程序位于生命周期的.finish()序列中或在onPaused()中添加finish() onPaused()来完成活动>

答案 1 :(得分:0)

这可能对您有所帮助

ActivityManager activityManager =(ActivityManager)gpsService.this.getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> serviceList= activityManager.getRunningServices(Integer.MAX_VALUE);

if((serviceList.size() > 0)) {
    boolean found = false;

    for(int i = 0; i < serviceList.size(); i++) {
        RunningServiceInfo serviceInfo = serviceList.get(i);
        ComponentName serviceName = serviceInfo.service;

        if(serviceName.getClassName().equals("Packagename.ActivityOrServiceName")) {
            //Your service or activity is running
            found = true;
            break;
        }
    }
    if(found) {
        //Close your app or service
    }
}