如何将类作为参数传递给静态方法

时间:2016-06-06 12:00:47

标签: java android service

我正在创建一个控件类来了解服务是否正在运行,如以下代码所示

public class CServiceCtrl {
private final static String TAG = ActMain.class.getSimpleName();

public static boolean isRunning(Activity act, Class servClass) {
    ActivityManager manager = (ActivityManager) act.getSystemService(act.ACTIVITY_SERVICE);
    for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
        if (servClass.class.getName().equals(service.service.getClassName())) {//highlighted with red "unknown class servClass"
            return true;
        }
    }

    return false;
    }
}

在主要活动的onCreate中我调用以下代码,其中ServSimulator是服务的名称:

CServiceCtrl.isRunning(this, ServSimulator.class);

但是代码无法编译,因为上面if语句中的servClass用红色突出显示,错误显示"未知类servClass"。 如何解决这个错误

1 个答案:

答案 0 :(得分:1)

servClass已经是Class个对象。不要在servClass.class声明中使用if;只是servClass本身。

if (servClass.getName().equals(service.service.getClassName()))