전환 버튼과 같은 활동에서 서비스를 시작/중지하고 싶지만 중지되지 않습니다.Android 서비스가 중지되지 않습니다
MainActivity.class 서비스가 온라인인지 아닌지
btnGoToTrack.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SendIntentService.class);
boolean isServiceRunning = isServiceRunning(SendIntentService.class);
if (isServiceRunning == false) startService(intent);
else stopService(intent);
}
});
확인 :
private boolean isServiceRunning(Class<?> pClass) {
ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if (pClass.getName().equals(service.service.getClassName())) {
return true;
}
}
return false;
문제는 항상 나를 TRUE 반환 isServiceRunning
입니다. 나는 이유를 모른다.
SendIntentService.class는 :
@SuppressLint("NewApi")
public class SendIntentService extends Service {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.e("D: ", "SERVICE STARTED !");
return START_STICKY;
}
@Override
public void onDestroy() {
super.onDestroy();
Log.e("D: ", "SERVICE DISABLED !");
}
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
}
예, 동일합니다. 나는 내 자신의 질문에 대답했다. –
아 좋아, 내가 내 장치에서 그것을 카운터 검사하고 그것은 매력처럼 일했습니다. 처음에는 매니페스트에 서비스를 추가하는 것을 잊어 버렸지 만 ... – JackZ