📘 Post

    [Android] HTTP 통신 시 Retrofit2로 헤더에 자동으로 토큰 전송하기

    Android Studio 4.2.2 Android SDK 28 Kotlin 1.5.21 도입 HTTP 통신을 할 때, 유효한 사용자임을 증명하는 정보를 헤더에 넣어 요청해야 하는 경우가 많다. 예를 들어 로그인을 했다면 유저정보가 담긴 토큰을 헤더에 넣어 로그인한 유저라는 정보를 보내는 것이다. 이 동작은 레트로핏 객체를 생성할 때 자동으로 헤더에 토큰 정보를 넣는 OkHttp클라이언트를 추가하면 된다. XAccessTokenInterceptor shared preference에 X-ACCESS-TOKEN이란 키값으로 저장되어있는 토큰을 헤더에 추가하는 Interceptor 클래스 class XAccessTokenInterceptor : Interceptor { override fun intercept..

    [Android] 레트로핏(Retrofit2) 사용법

    Android Studio 4.2.2 Android SDK 28 Kotlin 1.5.21 Retrofit2 http 통신을 위한 라이브러리. 안드로이드에서 REST API를 간편하게 사용할 수 있는 클라이언트 API이다. (공식 설명글) 사용법 의존성 추가 build.gradle (:app) dependencies { implementation 'com.squareup.retrofit2:retrofit:2.9.0' // http 통신 라이브러리 implementation 'com.squareup.retrofit2:converter-gson:2.9.0' // gson } 레트로핏 객체 생성 레트로핏 객체를 싱글톤으로 사용하기 위해 Application을 상속받는 클래스 App에서 다음과 같이 레트로핏 객체..

    [Android] 직접 만든 안드로이드 프로젝트 템플릿

    [Android] 직접 만든 안드로이드 프로젝트 템플릿

    이 글은 templete-android에 대한 설명입니다. GitHub - loggingWin/template-android: android project themplate including network(retrofit), utils(image, permission, etc), etc android project themplate including network(retrofit), utils(image, permission, etc), etc - GitHub - loggingWin/template-android: android project themplate including network(retrofit), utils(image,... github.com 어떤 프로젝트든 기본적으로 필요한 기능들이 존..

    [Android] 권한 확인 및 요청

    [Android] 권한 확인 및 요청

    Android Studio 4.2.2 Android SDK 28 Kotlin 1.5.21 권한 안드로이드 앱의 권한은 일반 권한과 위험 권한으로 나눠진다. 모든 권한 목록은 안드로이드 공식문서에서 확인할 수 있다. 일반 권한 manifest에 uses-permission 속성으로 추가하면 바로 권한이 부여되어 사용할 수 있다. 인터넷, 포그라운드 서비스 등이 해당된다. 위험 권한 사용자의 개인정보 접근 또는 개인정보를 만들 수 있는 작업에 관한 에서 특정 작업을 수행하려고 할 때 필요한 권한이다. 민감한 권한이기 때문에, manifest에 추가하여도 반드시 사용자에게 권한을 요청하여야 사용할 수 있다. 카메라, 외부 저장소 읽기 등이 해당된다. 만일 권한을 요청하지 않은 상태로 권한을 사용하고자 한다면,..

    [Android] 액티비티 화면전환 애니메이션

    [Android] 액티비티 화면전환 애니메이션

    Android Studio 4.2.2 Android SDK 28 Kotlin 1.5.21 인텐트로 A 액티비티에서 B 액티비티로 전환할 때 효과(애니메이션)를 커스텀할 수 있다. 애니메이션 리소스 res>anim 폴더에 원하는 애니메이션 xml 파일을 만든다. hold 250ms 동안 가만히 있기 slide_in_left 300ms 동안 화면 밖 왼쪽에서 슬라이딩해서 나타나기 slide_in_right 300ms 동안 화면 밖 오른쪽에서 슬라이딩해서 나타나기 slide_out_left 300ms 동안 왼쪽으로 슬라이딩해서 사라지기 slide_out_right 300ms 동안 오른쪽으로 슬라이딩해서 사라지기 위 외에도 애니메이션 속성을 이용해 여러 애니메이션을 만들 수 있다. 액티비티 화면전환 코드 위 리..

    [Android] 툴바(앱바) 사용하기

    [Android] 툴바(앱바) 사용하기

    Android Studio 4.2.2 Android SDK 28 Kotlin 1.5.21 툴바 상단의 있는 바 형태의 액티비티의 제목이나 각종 메뉴를 선택할 수 있는 뷰. 툴바 표시하기 따로 설정하지 않으면 툴바는 기본적으로 표시된다. 기본 툴바를 커스텀하거나 따로 툴바를 만드는 방법은 다음과 같이 세가지가 있다. manifest 설정하기 기본적으로 표시되는 툴바의 제목(title)을 manifest의 label 속성으로 설정할 수 있다. 설정하지 않은 경우, application 태그의 label 값(앱 이름)으로 표시된다. 레이아웃으로 구현하기 툴바 요소를 사용해 커스텀한 툴바를 만든다. 코드로 구현하기 툴바를 세팅하는 메소드 setToolbar()를 사용해 기본 툴바를 커스텀하거나, 레이아웃에 만든..