안드로이드 Espresso Recorder 활용한 UI 테스트
Google에서 제공하는 UI 테스트 방법은 Espresso을 이용할 수 있고, 전역에서 간단하게 테스트 가능한 UI Automator를 제공하고 있다. 그리고 좀 더 테스트를 편하게 제공하기 위해서 Android Studio에서 제공하는 Espresso...
Google에서 제공하는 UI 테스트 방법은 Espresso을 이용할 수 있고, 전역에서 간단하게 테스트 가능한 UI Automator를 제공하고 있다. 그리고 좀 더 테스트를 편하게 제공하기 위해서 Android Studio에서 제공하는 Espresso...
구글 안드로이드 개발에서 Kotlin을 지원한지 2년이 흘렀고, 2019년 Google I/O에서는 완전한 메인 언어로써 자리매김했음을 공식화했다. GDG 부산에서 발표한 내용을 토대로 어떠한 변화가 있었는지 정리해보려고 한다. (more…)
이전 글에서 Kotlin coroutines을 제어할 수 있는 Job에 대해 알아보았다. 기본적인 Job 초기화 후 사용한데 어떤 방법이 좋을까? 먼저 이전 글에서 초기화 때 적용했던 방법을 다시 살펴보자. val...
Kotlin Coroutines을 컨트롤하기 위한 Job을 제공해준다. 이 Job은 N 개의 coroutines의 동작을 제어할 수도 있으며, 하나의 coroutines 동작을 제어할 수도 있다. 먼저 Job이 어떤 것인지 알아보고, exception 발생...
Kotlin coroutines은 기존 Java Thread, 안드로이드에서 제공하는 AsyncTask, ReactiveX 패러다임을 일부 구현한 RxJava를 대신할 수 있는 Asynchronous/Non-blocking programming을 제공한다. 참고로 기존에 작성하였던 글에서 Kotlin Coroutines을 알아보고, 안드로이드에 library...
RxJava 2.x 사용 시 발생 가능한 버그를 소개하고, 해결 방법을 소개한다. RxJava 2.x 버전으로 올리고 나서 UndeliverableException이 발생하는 경우가 생겼다. 이해를 돕기 위해 오류 코드를 그대로 추가하고, 이...
RxJava는 안드로이드 개발에 없어서는 안 될 존재가 되었다. 많은 개발자들이 사용하고 있으며, 구글도 RxJava 관련한 API를 제공한다. 하지만 RxJava를 이해하기까지 상당한 시간이 걸린다. 다음 코드를 이해하려면 과연 몇...
이전 글에서 Coroutines과 안드로이드에 적용하기 위한 플러그인 적용 방법을 알아보았다. 이번 글에서는 적용한 코드를 좀 더 자세하게 알아보고, Android에서 onClick과 함께 사용할 경우 유용한 Coroutine 사용 방법을 알아본다....
async/await 이야기가 가장 흔한 coroutine. 안드로이드 개발자도 이제 coroutine을 적용할 수 있다. kotlin에 Coroutine을 제공하고 있는데, Kotlin 1.1부터 제공하고 있다. 다만 아직은 별도 라이브러리를 통해 Coroutine을 제공하고 있다....
러닝 커브가 낮은 Kotlin 학습 방법 및 적용 방법은 다양하다. Java와 Kotlin 언제든 혼용해서 사용할 수 있는 매력적인 언어이다. 그렇다고 안드로이드 전용의 개발 언어는 아닌데 JVM 위에서 동작하는...
내가 작성한 Kotlin 코드가 Java로 어떻게 표현되는지 궁금할 수 있다. 이런 경우 Android Studio에서 제공하는 byte 코드 Decompile을 통해 Java로 표현되는 코드를 확인할 수 있는데 이 글에서 간단하게...
그동안 com.android.support.* 또는 android.support.*와 작년에 공개한 Android Architecture Component에서 사용하던 android.arch.*의 패키지 명을 안드로이드 라이브러리 28.0.0부터 새로운 androidx.* 패키지 명으로 교체한다고 한다. Android Jetpack으로 통합해서 제공하려고 하니 기존...
2017년에 이어 2018년에도 Google I/O 참여 기회가 생겨 참여 중에 있다. 작년보다 2주 이른 5월 초에 진행하고 있는 Google I/O는 머신 러닝의 AI for everyone!이다. 이미 모든 것에...
Kotlin에서 기본으로 제공하는 산술 연산자 plus, minus 등을 +, -로 접근한다. 이러한 기법을 Kotlin에서는 Convention이라고 한다. 이번 글에서는 이러한 Convention을 확장하여 사용할 수 있는 Kotlin의 기법을 살펴보려고 한다....
Kotlin에는 늦은 초기화를 위한 방법 2개를 제공한다. class의 전역에 아래와 같이 값을 생성하면, 클래스가 만들어지는 시점에 변수를 함께 초기화한다. class 생성과 동시에 변수가 초기화되면, 재 접근시 빠르게 접근이...
Kotlin을 활용하여 개발을 하면 무조건 만나는 Lambdas 식. 기존 Android 개발에서는 Java 7을 주로 사용하다 보니 Lambda 식을 사용할 일은 없었다. 하지만 Backport 활용으로 Lambda을 적용할 수 있었는데...