Ben bir Android geliştiricisiyim ve uygulamamda bir if
bildirimi yazmak istiyorum. Bu bildiride, varsayılan tarayıcının (Android işletim sisteminde tarayıcı) çalışıp çalışmadığını kontrol etmek istiyorum. Bunu program aracılığıyla nasıl yapabilirim?Android'de çalışan bir uygulamanın olup olmadığını nasıl kontrol edebilirim?
54
A
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
}
-1
aşağıdaki yöntemle
tarafından kontrol edebilirsinizpublic 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 –
Güzel parça kodu, thx! –
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
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