#2 Service

ADD·2021년 7월 1일
0
post-thumbnail

짧은 설명과 그렇지 못한...

Service

안드로이드 4대 컴포넌트에 속하는 Service. 안드로이드를 공부할 때 가장 처음 마주하는게 4대

컴포넌트인데, (요새는 Fragment 까지 끼워서 5대라고도 하는 것 같다) 개중에 Service 의 명확한 활용을 경험한 기억이 없어서 이해하기 어려웠다.

Class 를 생성해서 구현하는 방식을 많이 이용하는 것 같던데, 나는 그냥 onCreate 단에 생성해서 사용해보았다.

구현 시 주의할 점

ANR 의 가능성이 있다.

시간이 걸리거나 무거운 작업의 경우, ANR 이 발생할 위험이 있기 때문에 Service 내부에 Thread 객체를 구현하는 방식이 안전하다.

구현

  1. Runnable 을 Implements 하는 Class 생성. (NewRunnable Class)

  2. 해당 Class 에 Retrofit 객체 생성하여 JSON Data 받아 올 수 있도록 함.

  3. MainActivity 에 NewRunnable 객체 생성, Thread 객체 생성.

  4. Thread 객체의 인자로 newRunnable 사용.

  5. 구현 완료.

https://jsonplaceholder.typicode.com/posts/

에서 데이터도 잘 가져왔고

혹시나 싶어 구현한 로그도 예쁘게 잘 찍힌다.

용도?

사실 실무에서 어떤 식으로 사용되는지 감을 잡기가 굉장히 애매했는데...

해당 예제와 같이 통신을 위해 사용하거나, 미디어 자료의 활용에 쓰인다고 한다.

0개의 댓글