본문 바로가기
안드로이드

[Https 오류] Android API level 21+ but was 19 in Android

by 디지털노마더 2020. 10. 19.

어느 날, 정상적으로 서비스 중인 앱에서 로그인이 되지 않는다는 문의전화가 왔다.

 

확인해보니, 갤럭시 맥스 (Android 4.4)에서만 로그인 과정에서 아래와 같이 에러가 발생하는 것이다.

 

보안상, 로그인 API는 HTTPS 도메인과 통신하는데 Android 5.0 이상은 정상동작하고 그 미만의 버전에서만 오류가 발생했다.

 

Caused by: java.lang.IllegalStateException: Expected Android API level 21+ but was 19

 

구글링 해본 결과, OkHttp에서 TLS 스택이 정상적으로 지원되는 버전이 Android 5.0 이상이었다.

 

즉, Android 4.4 이하 버전에서는 별도로 OkHttp가 지원될 수 있도록 build.gradle 설정값을 변경해줘야 한다.

 

//OkHttp
  implementation ("com.squareup.okhttp3:okhttp:3.12.12"){
      force = true //API 19 support
  }
  implementation 'com.squareup.okhttp3:logging-interceptor:3.12.12'

참조링크 : 스택오버플로우

 

 

댓글