ActivityManager mActivityManager = (ActivityManager)getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);
final String className = "test.lee.auto.MyPlayerService";
boolean startYN = serviceIsStart(mServiceList, className);
String serviceRes = getServiceClassName(mServiceList);
if (startYN) {
stopService(i);
tv2.setText(serviceRes);
} else {
startService(i);
tv2.setText(serviceRes);
}
private boolean serviceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className)
{
for(int i = 0; i < mServiceList.size(); i ++){
if(className.equals(mServiceList.get(i).service.getClassName())){
return true;
}
}
return false;
}
private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){
String res = "";
for(int i = 0; i < mServiceList.size(); i ++){
res+=mServiceList.get(i).service.getClassName()+ " \n";
}
return res;
}
List<ActivityManager.RunningServiceInfo> mServiceList = mActivityManager.getRunningServices(30);
final String className = "test.lee.auto.MyPlayerService";
boolean startYN = serviceIsStart(mServiceList, className);
String serviceRes = getServiceClassName(mServiceList);
if (startYN) {
stopService(i);
tv2.setText(serviceRes);
} else {
startService(i);
tv2.setText(serviceRes);
}
private boolean serviceIsStart(List<ActivityManager.RunningServiceInfo> mServiceList,String className)
{
for(int i = 0; i < mServiceList.size(); i ++){
if(className.equals(mServiceList.get(i).service.getClassName())){
return true;
}
}
return false;
}
private String getServiceClassName(List<ActivityManager.RunningServiceInfo> mServiceList){
String res = "";
for(int i = 0; i < mServiceList.size(); i ++){
res+=mServiceList.get(i).service.getClassName()+ " \n";
}
return res;
}
本文介绍了一种检查Android系统中特定服务是否运行的方法,并提供了如何启动或停止这些服务的示例代码。通过获取当前运行的服务列表并匹配指定的服务名称,可以判断服务是否处于活动状态。
2973

被折叠的 条评论
为什么被折叠?



