티스토리 뷰

반응형

해당 에러 해결법을 확인해 봅니다.

안드로이드 에뮬레이터 버전 6.0 이상에서 나타날 수 있는 에러이며, 앱이 안전하지 않은 상태(HTTP)에서 API로 요청을 보내거나 응답을 받을 때 발생하는 에러입니다. 

이러한 경우, 더욱 안전한 상태(HTTPS)에서 요청/응답을 주고 받아야 합니다.

 

AndroidManifest.xml 파일의 application 태그에 다음과 같이 추가합니다.

<application
    android:usesCleartextTraffic="true" >
반응형

이렇게 하면 쉽게 에러를 잡을 수 있습니다.

하지만 위의 태그를 사용하면, 데이터 무결성에 영향을 줄 수 있으므로, 데이터에 영향을 최소한으로 주면서 에러를 잡는 방법은 다음과 같습니다.

 

1. 우선 res 디렉토리에 xml 디렉토리를 새로 생성하고, network_security_config.xml 리소스 파일을 새로 생성합니다.

2. 새로 생성된 xml 파일에 다음과 같이 코딩합니다.

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">your_site_domain.com</domain>
    </domain-config>
</network-security-config>

3. 마지막으로 AndroidManifest.xml 파일의 어플리케이션 태그에 다음의 속성을 추가합니다.

<application
 android:networkSecurityConfig="@xml/network_security_config"
>

그럼 에러에 대한 설명을 마치도록 하겠습니다.

반응형
댓글