안드로이드 프로그래밍19 핵심만 골라 배우는 젯팩 컴포즈 (chapter 18 ~20) 컴포즈 개요컴포즈는 앱 개발에 관한 완전히 새로운 접근 방식.컴포즈는 선언적인 동시에 데이터 주도적.컴포즈의 선언적 구문프로그래머가 선언만 하면 레이아웃 배치, 제한, 렌더링 방법에 관한 모든 복잡한 세부 사항은 컴포즈가 자동으로 처리.컴포즈의 선언은 계층적으로 구조화되어 있기 때문에, 재사용 가능한 서브 뷰를 조합함으로써 복잡한 뷰를 쉽게 만들 수 있음.명령형 프로그래밍 패러다임 (기존 안드로이드 XML + Java/Kotlin)기존의 명령형 패러다임은 트리형태로 뷰를 구성. 레이아웃 위에 텍스트 뷰, 버튼 등을 쌓아 뷰를 그림.UI를 업데이트 하기 위해 일반적으로 findViewById() 같은 함수로 트리를 탐색해 내부 상태를 변경함.xml을 inflating 하여 객체를 만들어 사용, 위젯들은 내.. 2025. 5. 8. [android] 구글 권장 앱 아키텍처 중 UI Layer 란 ? UI Layer 란 UI Layer의 역할은 화면에 앱 데이터를 표시하는 것따라서, 사용자 상호작용(ex. 버튼 누르기) 또는 외부 입력(ex. 네트워크 응답)으로 인해 데이터가 변할 때마다 변경사항을 반영하도록 UI가 업데이트 되어야 함사실상 UI Layer는 Data Layer에서 가져온 앱 데이터를 시각적으로 보여주는 것에 관심이 있다.즉 정리하자면, 데이터가 변경될 때마다 "어! 데이터 바뀌었다!"하고 해당 변경 사항을 업데이트하고 반영하는 것이 UI 레이어의 역할이다. UI 레이어는 버튼을 누른다거나, 네트워크로부터 응답이 도착했다거나 등 상태 변화에 따라 변경 사항을 업데이트한다.UI Layer 에는 구성 요소 두 가지로 나눠짐- UI elements : UI 요소가 갖는 본질적인 상태 즉,.. 2025. 5. 2. [트러블 슈팅] Android 12 : 정확한 알람 권한 , 시스템에서 자동으로 권한을 부여하는 경우 2022년 11월 1일 이후, 구글은 Android 앱이 Target SDK 31 (Android 12) 이상을 지원해야 Google Play에 업데이트가 가능하도록 정책을 변경했다. 이 정책은 앱 개발자에게 다양한 기술적 요구 사항을 도입하게 만들었으며, 그 중 하나는 정확한 알람(Exact Alarm) 권한입니다. 이번 글에서는 정확한 알람 권한에 대해 알아보고, 이를 어떻게 처리해야 하는지 자세히 살펴보겠습니다. 1. 정확한 알람(Exact Alarm) 권한이란?Android 앱에서 정확한 알람은 특정 시간에 정확하게 트리거되는 알람을 의미합니다. 이러한 알람은 AlarmManager를 사용하여 다음 메서드를 통해 설정된다.setAlarmClock()setExact()setExactAndAllowW.. 2024. 9. 23. [트러블 슈팅] AlarmManager AlarmManagerAlarmManager는 특정한 시간과 주기로 Intent를 실행하는 기능을 제공한다.예를 들어, 정해진 시간에 사용자에게 Notification을 보내려고 할 때 AlarmManager를 활용할 수 있다. 원하는 시간에 AlarmManager를 통해 broadcast를 전송하도록 구현하고, 그 broadcast를 받은 receiver는 Notification을 발행하도록 구현하면 된다.특징지정된 시간과 간격으로 Intent를 실행한다.애플리케이션 외부에서 작동한다. 따라서 앱을 실행하고 있지 않을 때나 Doze 모드인 경우(Doze 모드를 깨우고) 특정 이벤트를 트리거할 수 있다. (Doze 모드는 절전 모드와 비슷한 개념)리소스를 효율적으로 사용할 수 있다. 애플리케이션 내의 백.. 2024. 9. 19. 이전 1 2 3 4 5 다음