안드로이드11 [안기단] 3. Broadcast Receiver [안드로이드 기초를 단단히] 3. Broadcast Receiver 안드로이드 구글 공식 문서를 공부하고 정리하는 글. Broadcast Receiver 안드로이드 앱은 안드로이드 시스템 및 기타 안드로이드 앱에서 브로드캐스트 메시지를 받거나 보낼 수 있다. Publish–subscribe 패턴처럼 관심 있는 이벤트가 발생할 때 브로드캐스트가 전송되는데 시스템 부팅이나 충전 시작과 같은 이벤트가 발생하면 안드로이드 시스템은 브로드캐스트를 전송하고 일반 앱에서도 새로운 데이터가 다운받았다는 등의 맞춤 브로드캐스트를 전송할 수 있다. 브로드캐스트 리시버(Broadcast Receiver)는 이러한 브로드캐스트를 수신할 수 있는 애플리케이션 구성 요소 중 하나로 브로드캐스트가 전송되면 시스템은 특정 유형의 브.. 2022. 5. 17. [안기단] 2. Service [안드로이드 기초를 단단히] 2. Service 안드로이드 구글 공식 문서를 공부하고 정리하는 글. Service 백그라운드에서 오래 실행되는 작업을 수행할 수 있는 애플리케이션 구성 요소이며 사용자 인터페이스를 제공하지 않는다. 어플리케이션 구성 요소 중 하나인 서비스는 사용자가 다른 앱으로 전환하더라도 계속해서 실행될 수 있다. 서비스는 다른 구성 요소와 바인딩되어 상호작용할 수 있고, 프로레스 간 통신도 가능하다. 예를 들어 백그라운드에서 음악 재생이나 또 다른 애플리케이션 구성 요소인 Cotent Provider와 상호 작용 등의 작업을 수행할 수 있다. 서비스는 포그라운드(Foreground), 백그라운드(Background), 바인드(Bind, Bound)의 세 가지 유형이 있다. 포그라운드 .. 2022. 4. 12. [안기단] 1. Activity [안드로이드 기초를 단단히] 1. Activity 안드로이드 구글 공식 문서를 공부, 정리하는 글. Activity 모바일 환경에서 한 앱이 다른 앱을 호출할 때 다른 앱을 전체적으로 호출하는 것이 아니라 다른 앱의 액티비티를 호출한다고 한다. 여기서 액티비티는 어떤 역할을 하는지 짐작해보면 액티비티는 앱과 사용자의 상호작용을 위한 진입점 역할을 한다고 볼 수 있다. 진입적 역할을 하는 액티비티를 호출하면 앱이 화면 상에 나타나는 것을 볼 수 있다. 즉 액티비티는 UI를 그리는 창이다. 화면에서 보여지는 UI를 그린다는 뜻이다. 한 앱에 여러 화면이 있다는 건 액티비티가 여러 개 있다는 뜻이므로 앱은 여러 액티비티로 구성될 수 있다. 그 중 하나의 액티비티가 Main 액티비티로 지정될 수 있고 이 Mai.. 2022. 4. 5. 안드로이드 Jetpack Compose - 1 안드로이드 Jetpack Compose를 공부해보자. 안드로이드 공식 문서에서는 아래와 같이 나와있다. (https://developer.android.com/jetpack/compose?hl=ko) Jetpack Compose는 네이티브 UI를 빌드하기 위한 Android의 최신 도구 키트입니다. Jetpack Compose는 Android에서 UI 개발을 간소화하고 가속화합니다. 적은 수의 코드, 강력한 도구 및 직관적인 Kotlin API를 사용하여 앱을 빠르고 생동감 있게 구현하세요. UI를 구성하기 위해 XML을 사용하는대신 Jetpack Compose를 이용하여 UI를 그려낼 수 있는 것 같다. 오로지 코틀린으로만 작성을 해도 앱 개발이 가능하다는 뜻이다. 과거에 버튼마다 다른 drawable.. 2022. 3. 4. Android Navigation 다른 탭 눌러도 기존 탭 fragment 유지하기 Navigation을 사용하여 편하게 프래그먼트 이동과 탭 이동을 할 수 있었는데 한 탭의 프래그먼트에서 계속 깊게 타고 들어갈 때 다른 탭을 눌렀다가 기존 탭을 누르면 탭의 초기 프래그먼트로 나왔다. 검색을 통해 간단하게 버전만 올려주만 위의 현상을 해결할 수 있었고 이를 multiple back stacks 라고 부르는 것 같다. 탭별로 여러 백 스택이 필요하니 의미는 단번에 이해할 수 있었다. 아래의 버전 이상으로 설정하면 versions.fragment = "1.4.0-alpha01" versions.navigation = "2.4.0-alpha01" multiple back stacks이 기본으로 가능한 navigation을 사용할 수 있다고 한다. navigation.xml 구조도 출처 링크의.. 2022. 1. 28. 이전 1 2 다음