Android判断服务是否在运行

来源:互联网 发布:mac book pro 2016颜色 编辑:程序博客网 时间:2024/05/17 21:56
import java.util.List;import android.app.ActivityManager;import android.app.ActivityManager.RunningServiceInfo;import android.content.Context;public class ServiceUtil {/** * 根据服务名称和正在运行的所有服务名称进行遍历比较,如果有一样的则表示此服务正在运行 * @param context * @param serviceName * @return */public static boolean isServiceRunning(Context context, String serviceName) {ActivityManager manager = (ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE);/* * 获得正在运行的100个服务,如果运行服务个数大于等于100,则只返回100个,如果不足100个,则把所有运行的服务都返回 * RunningServiceInfo对象封装了服务的信息  例如运行时间等   */List<RunningServiceInfo> infos = manager.getRunningServices(100);for (RunningServiceInfo runningServiceInfo : infos) {//获得正在运行服务的全类名String name = runningServiceInfo.service.getClassName();if(serviceName.equals(name)){//如果和传进来的服务全类名一致,则表示此服务正在运行return true;}}return false;}}

0 0
原创粉丝点击