onStartCommand(Intent, int, int)
시스템이 다음과 같은 플래그를 통해 서비스를 다시 시작하는 것 외에 전달되는 Intent가 NULL 이되는 다른 이유가 START_STICKY
있습니까?
또한 시스템에서 서비스를 다시 시작할 때 Intent.getAction()
메서드가 NULL을 반환하는 경우도 있습니다. 의도는 NULL이 아닙니다.getAction()
나도 여기서 물 었지만 아직 답변을받지 못했습니다.
업데이트 : Mark Murphy와 채팅 한 후, 그는 전체 인 텐트가 다시 시작된 후 전송되도록 대신 내 서비스 START_REDELIVER_INTENT
의 onStartCommand()
콜백으로 반환하도록 제안했습니다 START_STICKY
.
서비스가 무언가를하려고한다면 그 중간에 서비스가 다시 시작 될까봐 걱정했기 때문에 처음에이 작업을하지 않았습니다. 나는 그것이 내가 책임 져야 할 논리라고 생각한다 :)
intent
이다 null
에를 onStartCommand()
, 그이 전에 로그 캣를 볼 수있는 다른 오류로 인해 발생합니다. 이유는 모르겠지만 이것이 내가 관찰 한 것이며 간과하기가 매우 쉽습니다.
NullPointerException
활동 중 하나의 어딘가에있었습니다. 나중에 그것은 다른 오류였습니다. 이 오류가 발생하면서 실행중인 - -했다 그러나 두 경우 모두 내 스택 추적 내 서비스가 있음을 보여 주었다 intent
였습니다 null
귀하의 경우처럼. 나는 스택 추적을 위로 스크롤하기로 결정했을 때 무엇이 잘못되었는지 꽤 오랫동안 생각하고 있었고 맨 위 어딘가에 내 진정한 오류가있는 것처럼 보였습니다. 이 문제를 해결 한 후 함께있는 사람도 null
intent
사라졌습니다.