Android Study

android http url 사용하기

85chong 2021. 1. 7. 14:21
728x90
반응형
SMALL

* android 9 부터는  http를 별도의 설정 없이 사용 할 수 가 없음 아래와 같이 허용 해 주어야 사용가능함

 

- 상황 : 네이티브앱에 웹뷰를 올려서 작업할때, 테스트용 웹 주소는 대부분 http 로 할것임 이때 별도의 세팅이 없으면 http 주소를 사용할 수 없음

 

- 작업

1. 사용하는 http url을 준비한다. 

2. 보안xml 파일을 생성한다. 

3. 준비한 http url 를 입력해준다.

 

 

- 과정

 

1. app > src > res > xml 폴더를 생성한다.

 

 

 

2. 생성한 폴더에 network_security_config.xml 파일 생성한다.

 

 

 

3. 생성한 파일에 사용허용할 url을 세팅해준다.

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

* cleartextTrafficPermited = true 는 안에 있는 true 로 된 url을 허용해준다라는 설정 false 안에 있는 true/false 관계없이

모두 불허 한다는 설정

* includeSudomains = true 는 우측에 있는 url을 허용해준다 라는 설정

 

 

 

 

4. AndroiManifest 에서 http url 모두차단및 허용 url 파일을 세팅한다.(위에서 생성한 .xml 파일)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.myappjavatest">
     <application
		 ...
		 android:usesCleartextTraffic="false"
		 android:networkSecurityConfig="@xml/network_security_config"
		 ...
		 ...
	 </application>
 ...
</manifest>

* usesCleartextTraffic = true 는 모든 url을 허용한다는 설정(이렇게 하면 network-security-config 가 무용지물됨)

 

* networkSecurityConfig = "http 허용 파일을 설정(안해주면 network-security-config 가 무용지물됨)

 

 

 

- 끝 -