본문 바로가기

Android

(12)
Android Retrofit 사용하여 API 호출하기 1 Retrofit Retrofit는 REST 기반 웹 서비스를 통해 JSON 혹은 그 외의 데이터를 요청하고 응답받는 것을 쉽게 하는 라이브러리이다. Retrofit는 HTTP 요청을 OkHttp 라이브러리를 사용한다. Retrofit 문서 1.1 API 확인 https://baseURL.co.kr/user/login post{ id ="id", pwd="pwd" } 위와같은 API를 호출한다. API 성공 응답 { "success": true, "code": 0, "msg": "성공하였습니다.", "data": { "token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJWyJS9VUZXhwIjoxVpUhJBk03uo", "status": "A", "time": null } } AP..
Android Retrofit 인터셉터 사용하기 1 서론 인터셉터란 작업의 요청을 가로챈후 특정 작업을 하기위한 용도로 사용되는 역활을 수행한다. 예로 요청을 수행할때 로그를 출력한다거나 요청을 할때 반드시 필요한 선행작업이있다면 인터셉터를 사용하여 처리하는경우가있다. 이 글에서는 로깅 작업과 필수파라미터 를 인터셉터로 처리해볼것이다. 2 준비 작업 2.1 의존성 추가 implementation 'com.squareup.okhttp3:logging-interceptor:4.8.1' 2.3 Retrofit Client 준비 object RetrofitClient { private var retrofitClient: Retrofit?=null fun getClient(baseUrl:String):Retrofit?{ if(retrofitClient == n..
Android Floation Widget 구현하기 요구사항 및 구현 방법 앱 밖에 표시되는 즉 안드로이드 디바이스 화면 에 표시되는 view를 만들고싶다. 화면위에 그리기 원한을 사용한다. 서비스에서 view를 호출한다. 구현 1. 권한 화면위에 그리기 권한과 안드로이드 오레오 이상에서 서비스를 호출하기위한 포그라운드 서비스 등록 2. 권한획득 및 서비스 호출 class MainActivity : AppCompatActivity() { private val serviceIntent by lazy { Intent(this, ImmortalService::class.java) } companion object { private const val ACTION_MANAGE_OVERLAY_PERMISSION_REQUEST_CODE = 1004 } @Require..
Android 다크모드(Theme 사용) 적용하기 1 서론 Android 10부터 Dark theme를 지원하기 시작하여 이제 앱은 기본적으로 밝은 화면, 어두운 화면을 둘 다 제공해야 한다. 해당 글에서는 기본적으로 제공하는 테마에서 원하는 color이나 style 등을 적용시키는 방법을 알아볼 것이다. 2 Android Theme 2.1 기본 Theme Android 프로젝트를 생성하면 이제는 위와 같은 Theme를 제공한다. colorPrimary, textColorPrimary, windowBackground, navigationBarColor 등등 머티리얼 테마에서 미리 정의가 되어있는 item을 기본 상태로 사용할 수도 있고 재정의하여 원하는 색으로 적용할 수 있다. 이것이 가능한 이유는 안드로이드에서 특정 위치의 색상이 직접 기입된 것이 아..