클래스없이 Android-Service를 시작할 수있는 방법을 찾고 있습니다. 다음과 같은 많은 예제를 발견했습니다..class없이 Android 서비스 시작
startService (새 인 텐트 (this, TheService.class));
서비스 클래스를 넣고 싶지 않고 수동으로 중지 할 때까지 계속 서비스를 실행하고 싶습니다.
매개 변수없이 일부 소켓 만 열어야하기 때문에 서비스의 인터페이스가 필요하지 않습니다.
서비스 실행 시간은 앱의 실행 시간에 따라 달라져서는 안됩니다. 서비스를 필요로하는 첫 번째 앱은 앱을 시작해야하며 앱이 수동으로 중지 될 때까지 실행해야합니다.
그래서 BroadcastReceiver는 짧게 사용하기 때문에 사용할 수 없습니다. 서비스에 바인딩하면 서비스를 중지시키는 바인딩 해제로 연결됩니다 (원하지 않는 서비스).
서비스의 .class없이 시작 서비스를 사용할 수있는 방법이 있습니까? 대안 : 시작한 앱에 평생을 연결하지 않는 서비스에 바인딩하는 방법이 있습니까?
을 : _i는 브로드 캐스트 리시버를하기 때문에 사용할 수 없습니다 BroadcastReveiver 및 Services의 수명주기 동안 BroadcastRiveriver를 통해 오래 실행되는 서비스를 시작할 수 있기 때문에 추론이 여전히 잘못되었음을 알지 못하는 것처럼 너무 짧게 들립니다. 또한 서비스에 대한 _binding_은 Activity 객체의 응용 프로그램 수명주기와 관련이 있지만 _binding_ 시간 범위는 반드시 서비스의 _running_ 기간과 일치 할 필요는 없습니다. 그러므로 오해에 기반한 디자인 결정을하지 마십시오. –
'Service'가 자신의 수명을 제어하고 싶다면 여전히 bind/unbind를 사용하여 이것을 할 수 있습니다. 클라이언트가 bind 할 때,'service'는 자동적으로 멈추지 않도록 클라이언트가 바인딩을 해제 할 때 (onBind()에서'startService()'를 호출함으로써) 시작될 수 있습니다. '서비스'는 종료 준비가 될 때마다 멈출 수 있습니다. –