Android ServiceUtils-服务相关工具类
来源:互联网 发布:淘宝改后台软件 编辑:程序博客网 时间:2024/06/09 19:03
ServiceUtils是一个服务相关工具类
功能:
1.获取所有运行的服务
2.判断服务是否运行
3.停止服务
<span style="font-size:18px;">package com.blankj.utilcode.utils;import android.app.ActivityManager;import android.app.ActivityManager.RunningServiceInfo;import android.content.ComponentName;import android.content.Context;import android.content.Intent;import android.content.pm.ResolveInfo;import android.os.Bundle;import java.util.ArrayList;import java.util.Arrays;import java.util.HashSet;import java.util.Hashtable;import java.util.Iterator;import java.util.List;import java.util.Set;/** * <pre> * author: Blankj * blog : http://blankj.com * time : 2016/8/2 * desc : 服务相关工具类 * </pre> */public class ServiceUtils { private ServiceUtils() { throw new UnsupportedOperationException("u can't instantiate me..."); } /** * 获取所有运行的服务 * * @param context 上下文 * @return 服务名集合 */ public static Set getAllRunningService(Context context) { ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<RunningServiceInfo> infos = activityManager.getRunningServices(0x7FFFFFFF); Set<String> names = new HashSet<>(); if (infos == null || infos.size() == 0) return null; for (RunningServiceInfo info : infos) { names.add(info.service.getClassName()); } return names; } /** * 判断服务是否运行 * * @param context 上下文 * @param className 完整包名的服务类名 * @return {@code true}: 是<br>{@code false}: 否 */ public static boolean isServiceRunning(Context context, String className) { ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<RunningServiceInfo> infos = activityManager.getRunningServices(0x7FFFFFFF); if (infos == null || infos.size() == 0) return false; for (RunningServiceInfo info : infos) { if (className.equals(info.service.getClassName())) return true; } return false; } /** * 停止服务 * * @param context 上下文 * @param className 完整包名的服务类名 * @return {@code true}: 停止成功<br>{@code false}: 停止失败 */ public static boolean stopService(Context context, String className) { try { Intent intent = new Intent(context, Class.forName(className)); return context.stopService(intent); } catch (Exception e) { e.printStackTrace(); return false; } }}</span>
0 0
- Android ServiceUtils-服务相关工具类
- 服务有关的工具类ServiceUtils
- android双服务,消息通知(serviceutils)
- 服务相关工具类
- Android:屏幕相关工具类
- Android App相关工具类
- android屏幕相关工具类
- android服务相关概念
- Android手机服务状态的工具类
- Android工具类--网络相关类
- android网络相关的工具类
- android进程相关的工具类AppUtils
- Android编码文件操作相关工具类
- Android:BitMap操作相关工具类
- Android日期相关函数的工具类
- android 总结文件相关工具类
- Android AndroidUtilCode-进程相关工具类
- Android TimeUtils-时间相关工具类
- 利用 DevStack 来部署测试 OVN (Open Virtual Network)
- 从出门开始
- 必须添加对程序集“EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用。
- 38. Count and Say
- Yii2.0 session
- Android ServiceUtils-服务相关工具类
- Android应用数据、缓存的清除和获取缓存大小
- lambda函数
- iOS对大文件MD5摘要性能测试
- 命令行建立cocos2dx第一个anroid应用
- sougou输入法安装
- React Native Android 从学车到补胎和成功发车经历
- java中equals方法的用法以及==的用法(转)
- [LCS][LIS]Uva10635]