안드로이드

[안드로이드] java.io.IOException: Cleartext HTTP traffic to 웹주소 not permitted 발생시

http://portfolio.wonpaper.net 2021. 3. 17. 03:26

안드로이드앱 개발중에 제목과 같이

com.android.volley.NoConnectionError: java.io.IOException: Cleartext HTTP traffic to 웹주소 not permitted

형태 에러메세지가 날때, 이는 코딩중에 http 형식의 웹주소에 직접 접근하려할때 만날수 있는 에러 형태이다.

 

해결방안은 2가지이다.

 

 

1. AndroidManifest.xml 파일내에 android:usesCleartextTraffic="true" 소스 추가 (전체 웹주소 허용)

 

1
2
3
<application
        android:label="@string/app_name"
        android:usesCleartextTraffic="true">
cs

 

2.  직접 xml 형태로 접근가능한 일부 http 웹주소를 등록하고 이 주소만 허용시킨다.

 

/res/xml/network_security_config.xml 파일만든다.

1
2
3
4
5
6
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">웹주소</domain>
    </domain-config>
</network-security-config>
cs

그리고, AndroidManifest.xml 파일내에 아래 소스 추가한다.

 

1
2
3
<application
    android:label="@string/app_name"
android:usesCleartextTraffic="false"
    android:networkSecurityConfig="@xml/network_security_config">
cs