startService와 BindService의 차이점
1. 수명 주기:
startService()로 시작합니다. 서비스는 인텐트를 수락하고 onCreate() 및 onStart()를 거칩니다. 사용자가 이를 파괴하려는 인텐션을 보내면 onDestroy()를 거치게 되고, 액티비티에 바인딩되면 onCreate()와 onBind()를 거치게 됩니다. 서비스가 먼저 onUnbind()를 호출한 다음 onDestroy()를 호출합니다.
2. 제어 방법:
전자 제어 방법은 서비스에 대한 단일 작업을 수행하기 위해 고정된 방법이 필요합니다. 후자는 Activity에 바인딩되어 있으므로 수명 주기 문제를 고려할 필요가 없으며 Intent를 보내는 수동 작업에서 Service 객체에 대한 능동적 작업으로 변경되었습니다. Service에서 관련 작업을 수행하기 위해 Handler 클래스를 만들 수도 있습니다. . 서비스의 유연성과 운용성이 크게 향상되었습니다.
요약: 간단한 애플리케이션의 경우 startService() 시작 메서드를 사용하면 더 적은 수의 코드와 간단한 작업을 수행할 수 있습니다. 복잡한 애플리케이션의 경우, BindService() 메서드는 더 많은 코딩을 제공하지만 더 나은 조작성을 제공하여 Activity와 더 비슷해집니다.