您的位置:首页 > 移动开发 > Android开发

Android判断某一应用是否正在运行与判断某一Service是否正在运行

2016-10-11 16:17 465 查看
这就是一个简单的工具类,直接代码:

import android.app.ActivityManager;
import android.content.Context;

import java.util.List;

/**
* 作者:lzy on 2016/10/9 11:10
* 邮箱:1556342503@qq.com
*/

public class AppUtils {

/**
* 方法描述:判断某一应用是否正在运行
*
* @param context     上下文
* @param packageName 应用的包名
* @return true 表示正在运行,false表示没有运行
*/
public static boolean isAppRunning(Context context, String packageName) {
boolean isAppRunning = false;
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> list = am.getRunningTasks(100);
if (list.size() <= 0) {
return false;
}
for (ActivityManager.RunningTaskInfo info : list) {
if (info.baseActivity.getPackageName().equals(packageName)) {
return true;
}
}
return false;
}

/**
* 方法描述:判断某一Service是否正在运行
*
* @param context     上下文
* @param serviceName Service的全路径: 包名 + service的类名
* @return true 表示正在运行,false 表示没有运行
*/
public static boolean isServiceRunning(Context context, String serviceName) {
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> runningServiceInfos = am.getRunningServices(200);
if (runningServiceInfos.size() <= 0) {
return false;
}
for (ActivityManager.RunningServiceInfo serviceInfo : runningServiceInfos) {
if (serviceInfo.service.getClassName().equals(serviceName)) {
return true;
}
}
return false;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: