8. Service 종류와 수명주기를 이해하자 액티비티와 프래그먼트는 화면에 표시되는 동안은 생존하지만 표시되지 않게 되면면 onStop이나 onDestory가 호출되어 폐기될 가능성이 있습니다 다른 앱의 액티비티가 최상위에 오는 경우에도 백그라운드에서 처리를 계속하고 싶을 때는 어떻게 하면 좋을까요? 백그라운드 처리를 위해 준비된 컴포넌트가 Service 입니다. Service는 UI 없이 백그라운드로 처리를 수행하는 컴포넌트 입니다. Service의 종류와 수명주기를 이해 하자 Service는 크게 세 종류로 나눌 수 있습니니다. 첫번째는 Context.startService() 를 호출해 시작되는 서비스 입니다.두번째는 Context.bindService() 를 호출해서 Service에 바인드하는 ..
LocalBroadcastReceiver 를 이해하자 브로드캐스트는 다른 앱에 송신하는 것이 가능하지만 경우에 따라서는 다른 앱에 알릴 필요 없이 앱 내에서 완결시키고 싶을 때도 있습니다. 그럴 때는 로컬 브로드캐스트로 다른 앱에 알리지 않고 끝낼 수 있습니다. 로컬 브로드캐스트를 수신하려면 LocalBroadcastReceiver 를 이용합니다. 로컬 브로드캐스트는 다음에 설명할 Service와 조합해 이용하는 경우가 많습니다. Service 쪽에서 처리를 하고, 처리가 끝나면 액티비티나 프래그먼트에 로컬 브로드캐스트에 처리 완료를 알리는 식으로 사용합니다. 브로드캐스트를 수신해 처리할 때 주의할 점안드로이드는 전력 소비를 줄이고자 사용자가 화면을 끄면 슬립 상태로 들어갑니다. 브로드캐스트를 수신해서 ..
BroadcastReceiver로 브로드캐스트 이벤트를 수신하자 어떤 이벤트가 발생한 사실을 앱에 알리고 싶을 때 BroadcastReceiver에 통지 합니다. 시스템의 이벤트를 앱에 알리거나, 앱간에 연계를 위해 이벤트를 알리고 싶을 때, 또는 소켓통신을 이용한 프로그램을 만들 때 이용합니다. 기본을 이해하자 BroadcastReceiver는 Intent를 받았을 때의 처리를 onReceive에서 구현합니다. 어느 브로드캐스트 Intent를 받을지는 IntentFilter\fh wjddml gkqslek. public abstract void OnReceive(Content content, Intent, intent); 두 번째 인수로 전달되는 Intent 는 Context.sendBroadcast(..