android判断某服务是不是正在运行
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android判断某服务是不是正在运行相关的知识,希望对你有一定的参考价值。
android系统中,判断应用服务是否启动有两种方式:1.根据包名判断,以下为判断代码:
public boolean checkApkExist(Context context, String packageName)
if (packageName == null || “”.equals(packageName))
return false;
try
ApplicationInfo info = context.getPackageManager()
.getApplicationInfo(packageName,
PackageManager.GET_UNINSTALLED_PACKAGES);
return true;
catch (NameNotFoundException e)
return false;
2. 根据Intent判断,以下为判断代码:
public boolean checkApkExist(Context context, Intent intent)
List<ResolveInfo> list = context.getPackageManager().queryIntentActivities(intent, 0);
if(list.size() > 0)
return true;
return false;
public boolean checkApkExist(Context context, String packageName)
if (packageName == null || “”.equals(packageName)) return false;
try
ApplicationInfo info = context.getPackageManager() .getApplicationInfo(packageName, PackageManager.GET_UNINSTALLED_PACKAGES); return true;
catch (NameNotFoundException e) return false;
public boolean checkApkExist(Context context, Intent intent)
List<ResolveInfo> list = context.getPackageManager()
.queryIntentActivities(intent, 0);
if (list.size() > 0)
return true;
return false;
参考技术A * 用来判断服务是否运行.
* @param context
* @param className 判断的服务名字
* @return true 在运行 false 不在运行
*/
public static boolean isServiceRunning(Context mContext,String className)
boolean isRunning = false;
ActivityManager activityManager = (ActivityManager)
mContext.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> serviceList
= activityManager.getRunningServices(30);
if (!(serviceList.size()>0))
return false;
for (int i=0; i<serviceList.size(); i++)
if (serviceList.get(i).service.getClassName().equals(className) == true)
isRunning = true;
break;
return isRunning;本回答被提问者和网友采纳
linux判断某服务是不是启动脚本怎么写
类似:
if 服务开启 ; then
fi
用上 service crond status 查看 crond 服务
ntpd 服务
snmpd 服务
好像还有 syslog什么的服务
各位高手,我只要判断条件就行
用ps命令结合grep命令查找该服务名是否存在即可达到效果:
svc="sendmail"if ps -ef | grep $svc | egrep -v grep >/dev/null
then
echo "$svc is started!"
else
echo "$svc not found!"
fi
说明:
ps -ef : 显示当前所有在运行的进程
|:管道,即其前面命令的的输出,作为后面命令的输入
grep service_name : 在输出信息中,查找service_name数据行
egrep -v grep: 不显示grep查找命令本身
service <service_name> status
判断是否启动:
service <service_name> status | grep "running"
若启动,$status 为 0;否则为 1。本回答被提问者采纳
以上是关于android判断某服务是不是正在运行的主要内容,如果未能解决你的问题,请参考以下文章
Android 如何判断指定服务是否在运行中 “Service”