반응형 Android42 [Android] Service – 1. 기본 사항 (+ 주의할 점) Android 앱 개발자 면접에서 절대 빠질 수 없는 질문이 있습니다. 바로 4대 컴포넌트에 대한 것이죠. 그 중 Service에 대해 이야기하고자 합니다. 우선 “Service”는 개인적으로 제게는 쉽지 않은 주제입니다. 이유는 Service를 다뤄볼 일이 별로 없었기 때문이죠. 사실 Service란 것은 그 자체만 놓고 보면 별게 없습니다. Activity처럼 자체 라이프사이클을 갖고 동작하되 사용자 UI 없이 Background 작업을 위해 제공되는 컴포넌트입니다. 하지만 생각처럼 간단하게 정리할 수 없는 이유가… 백그라운드 처리이기 때문입니다. 백그라운드 처리는 아주 중요하며, 또 쉽지 않습니다. 특히 Android에서는 Android Framework 버전이 올라가면서 백그라운드 처리 작업에 대.. 2020. 11. 8. Android에서 현재 함수가 어떤 스레드에서 돌고 있는지 확인하는 방법 Android 앱 개발을 하다 보면 어지 간한 앱이라면 비동기 처리가 필수로 들어가게 됩니다. 이때 비동기 처리를 잘 알고 제대로 처리하지 않게 되면 벼레별 이슈를 다 맞이할 수 있습니다. 종종 특정 코드가 Main(UI) 스레드가 아닌 별도 백그라운드 스레드에서 돌길 원하는 경우가 있습니다. 그렇게 작성하고 돌려보니 실제로는 Main 스레드에서 도는 바람에 죽는 경우도 있고요. 이때 특정 함수, 코드가 어떤 스레드에서 도는지 확인하는 방법에 아주 간단한 방법이 있습니다. 바로 로그를 확인하는 것입니다. 2019-11-19 13:44:15.858 4032-4032/com.myapplication D/MainActivity: [My] startService 2019-11-19 13:44:15.864 403.. 2020. 11. 8. Android에서 Context는 대체 무엇인가? Context는 Android 앱 개발을 하다보면 최소 1번 이상 무조건 사용하게 되는 아마도 제일 빈번히 사용하는 객체 중 하나이지 않을까 싶습니다. 자주 사용하고, 어떤 상황에서 어떻게 사용하는지는 알지만, 누군가 Context가 뭔데?라고 물어보면 선뜻 대답해주기가 어려운… 뭔가 쉽고 간결하게 정의내리기 어려운 객체입니다. 마침 이런 고민은 저뿐만 아니라 다른 개발자들 역시 해왔던 고민이고, 그중 한 분이 잘 정리해놓은 글을 찾게 되었습니다. http://blog.naver.com/PostView.nhn?blogId=huewu&logNo=110085457720 무려 2010년도에 작성된 글인데요. 시간이 흘러서 지금도 이해가 딱 되는 글입니다. 본 포스팅은 위 글을 다시 제 개인 학습 목적으로 필요.. 2020. 11. 8. Android Runtime – 컴파일러 차이점 (JIT Vs. AOT) Android 롤리팝부터 Dalvik VM이 ART로 대체되었다. 가장 큰 주요 차이점은 컴파일러로 보인다. Dalvik VM: JIT (Just -in-Time) ART: AOT (Ahead-of-Time JIT (Just-in-Time) 바이트 코드를 실제 기계어로 컴파일하는 것을 실행 시점에 수행하게 된다. 따라서 실행 속도가 상대적으로 느리지만, 앱 설치 속도, 설치 용량 등이 AOT에 비해 빠르고 적게 차지한다. AOT (Ahead-of-Time) 이름에서 알 수 있듯이 미리 컴파일을 다 해놓는다. 따라서 실제 실행 시 별도 컴파일 과정이 없으므로 속도가 상대적으로 빠르다. 반면 미리 컴파일을 해놓기 때문에 설치 속도나 설치 용량이 좀더 큰편이다. 롤리팝부터 ART로 대체되긴 했지만, 누가부터 .. 2020. 11. 8. 이전 1 ··· 3 4 5 6 7 8 9 ··· 11 다음 반응형