All Posts

Ubuntu에 OpenJdk 9 설치하는 방법

Ubuntu에 OpenJdk 9을 설치하는 방법을 소개합니다. apt 명령어로 쉽게 설치할 수 있습니다. 만약 apt로 설치할 수 없다면 설치 파일을 다운로드하여 직접 설치하는 방법이 있습니다. 두가지 방법에 대해서 모두 소개합니다. 또한 Alternatives로 Java를 등록하여 사용하는 방법을 소개합니다.

06 Jan 2020

fork(), waitpid() 및 timeout 적용하기

Linux C++ 프로그래밍에서 fork(), waitpid() 예제를 소개합니다. waitpid()를 호출하면 child process가 종료될 때까지 block되는데, Timeout을 적용하여 Child의 응답이 없을 때 기다리지 않는 예제도 소개하려고 합니다.

05 Jan 2020

Android Mockito로 테스트 코드 작성하기 (kotlin)

Mockito는 객체를 mocking하는데 사용되는 Java라이브러리입니다. when, thenReturn 등의 키워드를 사용하여 객체를 mocking할 수 있고, kotlin에서도 사용가능합니다. JVM Unit test 및 Instrumentation test에서 모두 사용할 수 있습니다. Android도 Unit test를 작성하는데 공식적으로 Mockito를 사용하도록 권장하고 있습니다.

03 Jan 2020

Mockito cannot mock/spy final class 에러 해결 방법

Mockito cannot mock/spy final class 라는 에러가 발생하였습니다. Kotlin은 기본적으로 class를 final로 만들기 때문에 open으로 class를 만들지 않으면 이런 에러를 만날 수 있습니다. 의존성에서 mockito-core를 제거하고 mockito-inline으로 변경하면 문제는 해결됩니다.

03 Jan 2020

Google Analytics API로 웹사이트 분석하기 (Python)

Google Analytics는 내 웹사이트의 데이터를 가져올 수 있는 API를 제공합니다. 이 API를 통해 방문자 등의 정보를 자신의 기준에 맞게 정리할 수 있습니다. Java, Python, PHP의 언어로 제공되며 누구나 사용할 수 있습니다. 사전에 Google Cloud와 Analytics에서 약간의 설정이 필요합니다.

30 Dec 2019

Android - Handler 사용 방법 및 예제

Handler는 안드로이드의 비동기적인(Asynchronous) 이벤트를 처리하는 시스템입니다. 이 글에서는 먼저 기본적인 Handler에 대해서 알아봅니다. 그리고 Looper를 이용하여 다른 Thread에서 Hander를 사용하는 방법과, Thread 클래스를 구현하여 사용하는 방법에 대해서 알아보겠습니다.

29 Dec 2019

Android - IntentService 사용 방법

IntentService는 인텐트를 전달하여 서비스의 어떤 작업을 수행하는데 사용될 수 있습니다. 파일 다운로드나 업로드 등의 처리 시간이 긴 작업을 수행하는데 사용할 수 있습니다. 인텐트가 실행되면 onHandleIntent()로 전달됩니다.

29 Dec 2019

Android - JobIntentService 사용 방법

JobIntentService는 JobScheduler로 동작이 됩니다. enqueueWork()로 실행할 수 있습니다. Job은 일반적으로 바로 실행되지만 Doze 상태 등의 이유로 지연될 수 있습니다. Job이 추가되면(enqueueWork), onHandleWork()에서 Job을 처리합니다. JobIntentService의 경우 예약된 작업은 앱이 종료되도 실행이 됩니다.

29 Dec 2019