Android 判断某个服务是否正在运行
生活随笔
收集整理的這篇文章主要介紹了
Android 判断某个服务是否正在运行
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?判斷某個(gè)服務(wù)是否正在運(yùn)行的工具類
?
public class ServiceRunManager {public static boolean isServiceRunning(Context context) {boolean isRunning = false;ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);List<ActivityManager.RunningServiceInfo> serviceList = activityManager.getRunningServices(Integer.MAX_VALUE);if (serviceList == null || serviceList.size() == 0) {return false;}for (int i = 0; i < serviceList.size(); i++) {if (serviceList.get(i).service.getClassName().equals(MyService.class.getName())) {isRunning = true;break;}}return isRunning;}
}
方法使用
if (ServiceRunManager.isServiceRunning(MainActivity.this)) {Log.e(MyService.class.getSimpleName(), "在運(yùn)行");} else {Log.e(MyService.class.getSimpleName(), "不在在運(yùn)行");}
測(cè)試結(jié)果
把上面的Manager 變成單例的方法
public class ServiceRunManager {public static ServiceRunManager serviceRunManager = null;private ServiceRunManager() {}public static ServiceRunManager getInstance() {if (serviceRunManager == null) {serviceRunManager = new ServiceRunManager();}return serviceRunManager;}public boolean isServiceRunning(Context context) {boolean isRunning = false;ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);List<ActivityManager.RunningServiceInfo> serviceList = activityManager.getRunningServices(Integer.MAX_VALUE);if (serviceList == null || serviceList.size() == 0) {return false;}for (int i = 0; i < serviceList.size(); i++) {if (serviceList.get(i).service.getClassName().equals(MyService.class.getName())) {isRunning = true;break;}}return isRunning;}
}
?
單例的使用
if (ServiceRunManager.getInstance().isServiceRunning(MainActivity.this)) {Log.e(MyService.class.getSimpleName(), "在運(yùn)行");} else {Log.e(MyService.class.getSimpleName(), "不在在運(yùn)行");}
?
總結(jié)
以上是生活随笔為你收集整理的Android 判断某个服务是否正在运行的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求一个好听的日漫女主名字
- 下一篇: 自然之道的作者是谁啊?