안드로이드 29

안드로이드 개발 (45) Alarm Manager 심층 분석

안드로이드 알람 어플리케이션의 꽃 Alarm Manager 에 대해 알아보기전에 두가지에 대해 먼저 알아보겠습니다.Doze 모드Doze 는 기기의 충전선을 뽑고 화면을 끈채 기기를 사용하지 않으면, Android가 배터리를 아끼기 위해 백그라운드 작업을 단계적으로 제한 하는 절전 모드 입니다. 배터리를 아끼려고 네트워크,CPU,일반 알람,Job/WorkManager 작업을 전부 잠시 미뤄둡니다. 시간이 지나면 잠깐 깨워 ( maintenance window ) 밀린 일만 몰아서 처리하고 다시 잠듭니다.Doze는 두가지 진입 단계가 있습니다.1) Light Doze (화면 OFF 직후 + 충전X) Light Doze 는 네트워크 차단, Job/Sync 작업을 연기 하고 몇 분 간격으로 한꺼번에 처리하는 ..

안드로이드 개발 (42) Kotlin In Action 정리 - 6

(이전편 다시보기) https://gift123.tistory.com/77 안드로이드 개발 (41) Kotlin In Action 정리 - 5 (이전편 다시보기) 안드로이드 개발 (40) Kotlin In Action 정리 - 4 (이전편 다시보기) 안드로이드 개발 (38) Kotlin In Action 정리 - 2 (이전 편 다시보기) 안드로이드 개발 (37) Kotlin In Action 정리 - 1 현업에서 gift123.tistory.com 어느덧 6장 요약 이네요 참고로, kotlin in action을 전체 요약본이 아니라 개인적으로 필요한 부분을 위주로 정리했습니다. 6장 코틀린 타입 시스템 kotlin 만의 타입 시스템은 타입이 널 허용하는지 안하는지에 따른 안전성과 가변과 불변 타입으로 ..

안드로이드 개발 (41) Kotlin In Action 정리 - 5

(이전편 다시보기) 안드로이드 개발 (40) Kotlin In Action 정리 - 4 (이전편 다시보기) 안드로이드 개발 (38) Kotlin In Action 정리 - 2 (이전 편 다시보기) 안드로이드 개발 (37) Kotlin In Action 정리 - 1 현업에서 일을 하다보면, Back To The Basic 을 통하여 디버깅 추적 및 안전 gift123.tistory.com 이전편들을 총 요약해보면, 1장은 kotlin의 탄생 배경,철학, 특징을 알아보았습니다. 2장은 기본적인 문법(if, when,try,for 등등..)을 설명하였습니다. 3장은 함수 호출 관련, collection 의 설명, 문자열 치환 등등을 설명하였고 4장은 kotlin의 class,interface, object, ..

안드로이드 개발 (40) Kotlin In Action 정리 - 4

(이전편 다시보기) 안드로이드 개발 (38) Kotlin In Action 정리 - 2 (이전 편 다시보기) 안드로이드 개발 (37) Kotlin In Action 정리 - 1 현업에서 일을 하다보면, Back To The Basic 을 통하여 디버깅 추적 및 안전한 코드 작성 능력을 강화 할 수 있다는 것을 알게 됩니다. 이 gift123.tistory.com kotlin in action 요약 4번째 편 4장 요약입니다. kotlin 의 간단한 문법 설명 보다, 잊기 쉬울 만한 내용을 위주로 골라 정리하였습니다. 4장 - 클래스, 객체, 인터페이스 java와 kotlin은 비슷하면서도 사뭇 다릅니다. 예를들어, kotlin의 interface에 프로퍼티 선언이 들어갈수 있고, class는 기본적으로 ..

안드로이드 개발 (39) Kotlin In Action 정리 - 3

(이전 편 다시보기) 안드로이드 개발 (37) Kotlin In Action 정리 - 1 현업에서 일을 하다보면, Back To The Basic 을 통하여 디버깅 추적 및 안전한 코드 작성 능력을 강화 할 수 있다는 것을 알게 됩니다. 이 글은 J brains 에서 일하는 Dmitry Jemerov, Kotlin 개발팀의 일원인 Sv gift123.tistory.com Kotlin In Action 요약 세번째 편 입니다. 이전에 읽었던 책 이었지만, 다시 복습 겸 블로그 포스팅을 통해 내용 정리도 함께 하고 있습니다. 이번 편은 3장 요약 내용 입니다. 개인적으로 널리 알려진 내용 정리는 스킵 하였고, 다시 잊어 먹거나 반복 암기하면 좋을 내용들 위주로 정리하였습니다. 3장 - 함수 정의와 호출 자바..

안드로이드 개발 (37) Kotlin In Action 정리 - 1

현업에서 일을 하다보면, Back To The Basic 을 통하여 디버깅 추적 및 안전한 코드 작성 능력을 강화 할 수 있다는 것을 알게 됩니다. 이 글은 J brains 에서 일하는 Dmitry Jemerov, Kotlin 개발팀의 일원인 Svetlana lsakova 이 두명이 집필한 책인 Kotlin In Action 내용을 정리한 내용 입니다. 더보기 Drimitry jemerov 는 대표적으로 최초의 Kotlin ByteCode Generator를 만들었다. Svetlana Isakova는 대표적으로 Kotlin Compiler의 Type Inference 과 Overload resolution 부분을 개발 하였다. 최근에 Effective Kotlin 과 Kotlin In Action을 다시..

안드로이드 개발(35) 안드로이드 설계 - Layered Architecture

잠이 안오는 밤에 생각을 정리하기 위해 글을 작성 하게 되었습니다. 안드로이드 설계 관한 이야기를 하기전에, 안드로이드 개발을 이야기 해보자면 안드로이드 개발은 Activity, Service, ContentProvider, BroadCastReceiver 크게 4개의 컴포넌트가 존재합니다. 이 네가지는 공통적으로 Context를 제공해주며 앱에 진입할 수 있는 진입점이 됩니다. 또한 안드로이드에서 어플리케이션은 기본적으로 반드시 1개 이상의 Activity가 필요합니다. Activity가 없는 어플리케이션은 실행 할 수 가 없습니다. 그로므로 manifest에 최소 1개의 Activity 가 있어야 하며 앱 실행의 시작점을 Activity intent-filter안에서 명시 해놔야 합니다. Activi..

안드로이드 개발 (34) RecyclerView 성능 향상

Android 개발을 하다보면 불가피 하게 RecyclerView를 사용해야 하는 순간이 대부분 옵니다. 요새 Compose열풍이 휩쓸고 있지만 아직은 회사에서 사용하는 목록형 UI는 RecyclerView를 통해 만들었을 겁니다. 저 또한 마찬가지로 RecyclerView를 활용하여 목록형 UI를 만들던 도중이었습니다. 하지만 테스트 기기중에 저사양 기기는 RecyclerView를 단순하게 사용하면 버벅거림을 피할 수 없었습니다. 저사양 기기에서 최상의 퍼포먼스를 내기 위해 연구했습니다. 내가 만든 소프트웨어는 기기에 차별받지 않고 항상 사랑받고 싶은 욕심으로.. 연구했던 내용을 블로그에 정리하려고 합니다. 0. 느린 렌더링 "UI 렌더링은 앱에서 프레임을 생성하여 화면에 표시하는 작업입니다. 사용자와..

안드로이드 개발 (33) Coroutine Flow on Android

안녕하세요 Loner 입니다. 스터디에서 발표를 했던 Android 에서의 Coroutine Flow 활용을 블로그에 다시 정리합니다. 입문용에 가까운 내용이기 때문에 설명이 축약된 부분이 많을 수 있습니다. 판초라는 청년이 산에 살고 있었습니다. 판초는 물을 길러오기 위해서 호수에 가야합니다. 하지만 호수를 찾아갔더니 호수의 물이 말라있었습니다. 직접 호수를 찾아가지 않고 물을 길러오는 동시에 물이 말랐는지 확인할 방법을 찾던 판초는 호수와 연결된 기나긴 통로를 만들면 어떨까 생각을 하게 됩니다. 결국 판초는 집에서 호수까지 연결되는 기나긴 파이프를 설치합니다. 그렇게 직접 호수에 찾아갈 일은 사라졌습니다. 호수에 물이 말라 있다면 파이프에 물이 흐르지 않을 것이고 호수에 물이 남아있다면 파이프에 물이..

안드로이드 개발 시 실수 모음

안녕하세요 Loner 입니다. 언제나 열심히 앱 개발 작업중 입니다. 정신 차려보니 벌써, 추석 명절을 맞았고 앱개발 때문에 시간이 항상 바빳지만 오랜만에 여유가 생겨서 블로그를 작성합니다. 명절 이벤트로 안드로이드 개발하면서 한번쯤 경험 할 수 있는 실수들을 모아봤습니다. 제 경험과 함께, 다른 안드로이드 개발자님들의 의견을 모아서 만들어봤습니다. 0. Manifest.xml - 필요한 permission을 추가 안함 - Activity의 export를 추가안함 - useClearTextTraffic 설정을 하지 않아서 삽질 - Service나 receiver 클래스를 만들어두고 manifest 에 설정 안함 1. RecyclerView 사용시 - 어댑터, xml , 로직 다 멋지게 만들었으나 layo..