일부 백그라운드 작업을 실행하고 특정 조건이 충족 될 때 사용자에게 알림을 표시하는 응용 프로그램을 개발 중입니다. 사용자가 알림을 클릭하면 서비스를 다시 시작하지 않고 주 활동으로 이동시킵니다.서비스가 여러 번 호출 되었습니까?
내 문제는 내가 이것을 달성 할 수 괜찮나 다시는 내 서비스를 다시 시작하려는 해달라고는 주요 활동에 나를 소요 알림을 클릭하고 내 서비스 걸 다시 시작하고 때이다.
난에 임대 모양을 서비스 실행 날씨 확인 여부를 다음 코드를 사용하고 그것을
public static boolean isServiceRunning(String serviceName,Context context){
boolean serviceRunning = false;
ActivityManager am = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> l = am.getRunningServices(50);
Iterator<ActivityManager.RunningServiceInfo> i = l.iterator();
while (i.hasNext()) {
ActivityManager.RunningServiceInfo runningServiceInfo = (ActivityManager.RunningServiceInfo) i
.next();
if(runningServiceInfo.service.getClassName().equals(serviceName)){
serviceRunning = true;
}
}
return serviceRunning;
}