Kotlin Coroutines을 알아보고, 안드로이드에 library 적용하기

async/await 이야기가 가장 흔한 coroutine. 안드로이드 개발자도 이제 coroutine을 적용할 수 있다. kotlin에 Coroutine을 제공하고 있는데, Kotlin 1.1부터 제공하고 있다. 다만 아직은 별도 라이브러리를 통해 Coroutine을 제공하고 있다.

추후 Coroutine은 1.3부터 공식적으로 Kotlin에 포함되어있어 별도의 라이브러리 추가 없이 사용이 가능해지게 된다.

이번 글에서는 Kotlin을 간략하게 알아보고, 안드로이드에서 사용 가능하도록 Coroutine 라이브러리 적용하는 방법을 소개한다.

Read More

Kotlin 더 잘 활용하기

러닝 커브가 낮은 Kotlin 학습 방법 및 적용 방법은 다양하다. Java와 Kotlin 언제든 혼용해서 사용할 수 있는 매력적인 언어이다.

그렇다고 안드로이드 전용의 개발 언어는 아닌데 JVM 위에서 동작하는 대부분에 적용이 가능하며, 더 나아가 Kotlin native를 통해 LLVM 컴파일을 할 수 있도록 배포 중인데 우선 iOS에서 이를 활용할 수 있는 게 목표로 보인다.

이런 코틀린을 잘 활용하려면 어떡해야 할까? 수많은 라이브러리가 배포 중이지만 어떻게 구현되어있는지 알면 더 좋지 않을까?

그리하여 3가지 구성요소를 정리해보려고 하는데 아래와 같다.

Read More

Android Architecture Components ViewModel을 간단하게 초기화 하려면?

Android Architecture Components ViewModel을 간단하게 초기화 하려면?

Google I/O 2017에서 첫 선을 보였었다. 2018년 Google I/O에서 Jetpack 소개하였고, Android AAC(Android Architecture Components)를 포함하였다.

Jetpack에는 안드로이드 개발에 도움을 줄 수 있는 라이브러리 대부분을 추가하였는데 Architecture에는 Data Binding/Lifecycle/LiveData/Navigation/Paging/Room/ViewModel/WorkManager 제공하고 있다.

이중 AAC ViewModel 초기화하는 방법과 내부 코드를 살펴보고, 필자가 사용하려고 배포한 LifecycleExtensions을 소개한다.

Android AAC ViewModel을 간단하게 Inject 하기 위해서 개발 배포하는 라이브러리는 Github - LifecycleExtensions에서 확인 가능하다.

Read More

Android P에서 달라지는 Behavior와 Features를 간단하게 살펴보자

지난 글에서 Android P Preview 설치 및 달라진 UI에 대해서 살펴보았다. 이번 글에서는 Android P에서 달라지는 동작과 새로운 feature를 정리해보려고 한다.

Android P에서 많은 부분이 추가되었고, 수정되었다. 그중 바로 백그라운드 제한은 OS 업데이트 때마다 강화시키고 있는 부분이다. 큰 이유야 사용자의 배터리를 최대한 절약하기 위해서이고, 백그라운드에서 위험한 기능을 제한하기 위함인데 아래와 같은 제한이 추가되었다.

Read More

Android P Preview 설치 및 살펴보기

Android P Preview 설치 및 살펴보기

올해도 Android 새 버전의 베타가 배포 중이다. Android P Beta를 지원하는 기기가 과거 구글의 넥서스와 픽셀에서 만 제공하였으나, 올해는 소니와 노키아, 원플러스 등의 제조사 기기들에서도 Android P Beta을 사전에 체험할 수 있게 되었다. 다만 국내 기기는 한 대도 없음.

대상 기기에는 구글의 제조 폰인 Google Pixel/XL, Google Pixel 2/XL 외에도 일반 제조사들의 기기인 Essential Phone, Nokia 7 plus, OnePlus 6, Oppo R15 Pro, Sony Xperia XZ2, Vivo X21UD, Xiaomi Mi Mix 2S 등의 제품들이 포함되어있다. Android P Preview 올리는 방법은 각 제조사마다 다 다르기 때문에 직접 확인이 필요하다.

Read More