사용자가 앱을 탐색하고, 앱에서 나가고, 앱에서 다시 돌아가면 앱의 Activity 클래스는 활동이 상태 변화(시스템이 활동을 생성, 중단 또는 다시 시작하거나, 활동이 있는 프로세스를 종료)를 알아차릴 수 있는 여러 콜백을 제공합니다.callback: 이벤트가 발생하
이 요소는 다른 애플리케이션의 구성요소에서 활동을 시작할 수 있는지를 설정합니다."true"인 경우 모든 앱에서 활동에 액세스할 수 있으며 정확한 클래스 이름으로 활동을 시작할 수 있습니다.'false'인 경우 활동은 같은 애플리케이션의 구성요소나 사용자 ID가 같은
=> Fragment는 Activity에서 Inflate 시키는 것이므로 Activity의 상태가 변함에 따라 Fragment의 상태도 변하기 때문에액티비티 생명주기와 유기적으로 연관되어 있다.프래그먼트가 액티비티에 붙을 때 호출인자로 Context가 주어진다.프래그먼
프로그램을 변경하는데 드는 비용프로그램의 새로운 변경사항을 추가하는데 기존의 코드를 변경해야 하는 경우 기존의 코드를 약간만 변경해도 변경사항을 추가할 수 있다면 높은 생산성을 가진다.일반적인 Android 앱에는 Activity, Fragment, Service, c
ViewModel 개요 ViewModel 클래스는 수명 주기를 고려하여 UI 관련 데이터를 저장하고 관리하도록 설계되었다. ViewModel 클래스를 사용하면 화면 회전과 같이 구성을 변경할 때도 데이터를 유지할 수 있다. 이렇게 생성된 ViewModel은 Activ
Android는 다양한 기기와 폼 펙터에 사용할 수 있도록 Linux 기반의 오픈소스 소프트웨어 스택이다.(그림 1. Android 소프트웨어 스택)Android 플랫폼의 기반은 Linux 커널이다. 예를 들어, ART(Android 런타임)는 스레딩 및 하위 수준의
안드로이드 4대 컴포넌트로는 Activity, Service, Broadcast Receiver, Content Provider가 있으며 각각의 컴포넌트는 인텐트(intent)를 통해 상호작용한다. - 각 컴포넌트들은 하나의 독립적인 형태로 존재 - 각 컴포넌트들은
MVC 디자인 패턴은 하나의 어플리케이션을 Model + View + Controller로 이루어진 3개의 측면으로 분리하여 개발하는 디자인 패턴이다.사용자의 Action들은 Controller로 들어오게 된다.Controller는 사용자의 Action을 확인하고, M
카페 주문, 메뉴, 매출을 관리하는 관리자 앱을 만들었는데 매출을 수치로 표현하기보다는 그래프로 표현하는 것이 한 눈에 보기 편할 것 같아 MPAndroidChart 라이브러리를 사용해서 그래프를 구현하였다.링크 : https://github.com/PhilJ
Hilt를 사용하여 프로젝트를 진행 중 이었는데 DatePicker 같은 component를 다른 클래스로 만들고 fragment에서 인스턴스를 만들어서 함수를 호출하는 과정에서 에러가 났다.DatePickerHelper.ktFragment.kt에서 처음에는 conte
EditText를 클릭하고 키보드로 입력을 하려 할 때 EditText가 키보드에 가려지는 현상이 있다.이를 해결하기 위해 AndroidMenifest에서 activity에 windowSoftInputMode를 설정한다.참고로 windowSoftInputMode는 종류
여행을 가서 모임을 찾고 그 날의 일들을 기록하는 프로젝트를 수행하는 중에 갤러리에서 영상을 가져와서 썸네일을 보여주고 영상과 썸네일 모두 서버에 전송하는 기능을 구현해야 했었다.이 프로젝트의 targetSDK는 33 (안드로이드 13)으로 지정되어있기 때문에 READ
서버에서 받은 video url을 리싸이클러뷰에 렌더링을 하는 과정이다. video를 재생시키는 방법은 Exoplayer 라이브러리를 채택했으며 Android 플랫폼을 위한 오픈 소스, 어플리케이션 레벨의 미디어 플레이어이다. build.gradle(App Modul
안드로이드 리싸이클러뷰 아이템을 클릭했을 때 화면을 이동한다던지 배경색을 바꾼다던지하는 클릭 이벤트를 처리해야할 때가 많다. 예를 들어 리싸이클러뷰 아이템을 클릭 시 화면을 이동해야하는 경우에 대해 살펴보자.intereface로 Click 이벤트를 받으면 실행할 콜백
안드로이드 프로젝트를 MVVM 구조로 Flow를 사용하여 UI의 상태를 관리하고 렌더링한 기록을 적어보려 한다. 프로젝트는 https://github.com/merttoptas/BaseApp-Jetpack-Compose-Android-Kotlin/tree/master
jetpack compose에서 stateFlow를 수집하는 collectAsState()에서 Composable함수의 라이프싸이클에 맞게 Flow를 수집하기 위해 collectAsStateWithLifecycle()로 변환하고 빌드를 했을 떄 다음과 같은 에러가 발생
이 글은 드로이드나이츠 github와 Gradle kotlin 컨벤션 플러그인으로 효율적으로 모듈 관리하기(https://www.slideshare.net/slideshow/gradle-kotlin/261178195안드로이드 프로젝트를 멀티 모듈로 설계할 경우
서론 jetpack compose에서 Lazy component의 Item을 Swipe하여 삭제하는 기능을 구현해보았다. 이 포스팅에서는 2가지 방법을 소개하며 하나는 Material3에서 제공하는 SwipeToDismissBox Component를 사용하는 것이고,
현재 대부분 배포되어 있는 앱들은 네트워크 연결이 끊겼을 때 (Wifi나 모바일 데이터가 끊겼을 때) 사용자에게 시각적으로 네트워크 연결이 끊겼음을 알려주는 ui를 보여줍니다. 이 포스팅은 https://medium.com/@meytataliti/obtaining-
앱 내부의 데이터 리스트를 엑셀로 추출해서 데이터 분석용으로 사용하는 경우가 있었습니다. Apache POI 라이브러리를 이용하여 리스트를 xlsx 파일로 저장하고 공유하고 읽어올 수 있는 기능을 구현해봤습니다. dependency 버전 카탈로그를 사용하고 계시다면