我發現了一些代碼,告訴你服務是否正在運行。但它正在編譯錯誤,我不知道爲什麼。我的服務類的名字是AudioService(擴展服務類),我對代碼,它說的if語句行收到編譯錯誤,編譯時檢查服務是否正在運行的方法
AudioService.equals(service.service.getClassName())
和編譯器錯誤消息是,
無法對類型爲object的非靜態方法equals(object)進行靜態引用
我正在使用與服務綁定的Activity內部的方法。我在onResume
方法中調用bindService()
,在onPause中調用unbindService()
。只想使用某種方法來生成Toast消息,以顯示該服務實際上正在運行。
我在做什麼錯誤,以及如何讓這段代碼工作?
private boolean isServiceRunning() {
ActivityManager manager = (ActivityManager)getSystemService(ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if (AudioService.equals(service.service.getClassName())) {
return true;
}
}
return false;
}
請粘貼您的堆棧跟蹤 – dd619