* 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 가 무용지물됨)
- 끝 -
'Android Study' 카테고리의 다른 글
Firebase Crashlytics / AndroidStudio 4.1.1 / Kotlin 세팅 (0) | 2021.01.21 |
---|---|
Firebase Crashlytics / AndroidStudio 4.1.1 / Java 세팅 (0) | 2021.01.15 |
Android implementation 하는 방법(Java , Kotlin 사용) (0) | 2020.11.24 |
Fabric -> Firebase Crashlytics 연동완료 but, 로그 전송 안됨(경험) (2) | 2020.11.16 |
Android WebView Process(방향만 제시) (0) | 2020.11.09 |