2010-11-18 30 views

cevap

102

aşağıda Yardımcısı sınıfını ekleyin: İstediğiniz Uygulama çalıştıran olup olmadığını

public class Helper { 

     public static boolean isAppRunning(final Context context, final String packageName) { 
      final ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); 
      final List<ActivityManager.RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses(); 
      if (procInfos != null) 
      { 
       for (final ActivityManager.RunningAppProcessInfo processInfo : procInfos) { 
        if (processInfo.processName.equals(packageName)) { 
         return true; 
        } 
       } 
      } 
      return false; 
     } 
    } 

Şimdi aşağıda koddan kontrol edebilirsiniz:

if (Helper.isAppRunning(YourActivity.this, "com.your.desired.app")) { 
    // App is running 
} else { 
    // App is not running 
} 
+0

Güzel parça kodu, thx! –

+2

Thx, ancak her seferinde gördüğüm gibi com.android.browser çalışıyor. Ön plandayken, genellikle listenin 3. veya 4. pozisyonundadır, aksi halde listede yer alır. Yani bu ifade her zaman doğru döner. Bu sorunu nasıl çözebilirim? Sadece son süreç tarayıcı olduğunda "tarayıcı çalışıyor" yazmalıdır. – sjor

+1

RunningAppProcessInfo bir alan 'lru' size daha fazla referans için uygulama çalışma zamanının göreceli bilgi verecektir doc sayfasını kontrol edin - http://developer.android.com/reference/android/app/ActivityManager.RunningAppProcessInfo.html – dhaval

-1

aşağıdaki yöntemle

tarafından kontrol edebilirsiniz
public static boolean isRunning(Context ctx) { 
    ActivityManager activityManager = (ActivityManager) ctx.getSystemService(Context.ACTIVITY_SERVICE); 

    List<ActivityManager.RunningTaskInfo> tasks = activityManager.getRunningTasks(Integer.MAX_VALUE); 

    for (ActivityManager.RunningTaskInfo task : tasks) { 
     if (ctx.getPackageName().equalsIgnoreCase(task.baseActivity.getPackageName())) 
      return true; 
    } 
    return false; 
} 
+0

kitkat'ın üzerinde çalışıyor mu? eğer evet ise lütfen kodu sağlayın ... teşekkürler –

İlgili konular