본문 바로가기

Android/Network

(4)
[Android] SSE를 사용하여 실시간 통신하는 방법. 회사에서 업무를 진행하다, SSE를 사용하여 통신을 해야 하는 케이스가 추가되었다. Websocket를 통해서 실시간 통신을 구현해 본 경험은 있지만,SSE를 사용해 본 경험은 없었기 때문에 이를 적용하기 위한 과정과 적용하는 간단한 샘플 코드를 작성해보고자 한다.우선,SSE란 무엇인가부터 알아보자. SSE란,Server-Sent Events의 약자로서버에서 클라이언트로 단방향 실시간 데이터를 전송하는 웹 기술이다. 즉,서버에서 클라이언트로 일방통행 통로를 하나 뚫어주고, 그 통로를 통해서 계속해서 데이터를 전달할 수 있다는 것이다. 필자가 맨 처음, WebSocket은 구현해 봤지만 SSE는 처음이다.라고 말한 이유는WebSocket도 실시간 데이터를 전송하는 기술이지만, 이는 양방향 통신이 가능한 기..
[Android] Retrofit 대신 Ktor을 사용하여 통신을 해보자. -2. DI 본 게시글은 이전 글에 이어서 작성된 부분입니다. 2022.08.12 - [Android/Network] - [Android] Retrofit 대신 Ktor을 사용하여 통신을 해보자. 지난 글에 이어서, 이번에는 Hilt와 Koin을 사용하여 Ktor을 적용해보도록 하였다. 우선, Hilt를 사용하기 위해 Gradle에 추가해주도록 한다. plugins { ... id 'com.google.dagger.hilt.android' version '2.41' apply false } Project 범위의 Gradle에 Hilt 플러그인을 추가해주고, plugins { ... id 'dagger.hilt.android.plugin' } dependencies { ... // hilt def hilt_versio..
[Android] Retrofit 대신 Ktor을 사용하여 통신을 해보자. -1. 기본 최근 안드로이드 관련 블로그를 보다가 Ktor이라는 것을 알게 되었다. Retrofit 대신해서 사용할 수 있는 비동기 통신 라이브러리라고 하는데, Retrofit만 사용하던 필자로선 상당히 흥미로운 라이브러리였다. 따라서, 아주 간단한 샘플 프로젝트를 만들어서 Ktor을 적용해보고 기본적인 사용 방법에 대해 글을 작성해보고자 한다. 우선, Ktor이 무엇인가? Ktor은 JetBrains에서 만든 Framework로 Kotlin을 사용하여 비동기 서버 및 클라이언트를 구축할 때 사용하는 오픈소스. 라고 한다. Kotlin으로 구현되어있기는 하지만, 안드로이드에 제한되어 있지 않고 다양한 플랫폼에서 사용이 가능하다는 특징을 가지고 있다. 필자는 클라이언트 입장에서 Ktor을 사용해서 Retrofit 대신..
[okHttp] HttpLoggingInterceptor와 Koin을 사용하여 API 통신 Log를 찍어보자. 저번 라이브러리 모듈을 만들다가 API 통신 시에 사용하는 Retrofit, okHttp 중에 데이터를 보여주는 방법이 있을 것 같다고 생각하고 찾아보던 와중, okHttp에서 지원하는 HttpLoggingInterceptor 에 대해서 찾을 수 있었다. 따라서, LogInterceptor를 Koin을 통해 설정하고 사용하는 방법에 대해서 작성해 보고자 한다. HttoLoggingInterceptor를 사용하기 위해서는 Gradle에 라이브러리를 추가해 주어야 한다. // okhttp3 Logging implementation 'com.squareup.okhttp3:logging-interceptor:4.9.0' 해당 라이브러리를 추가하였으면, 적용하여 사용해보도록 하자. 우선 Retrofit과 okHt..