Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- image
- 에러
- build
- studio
- Retrofit
- Android
- 레트로핏
- GIT
- Kotlin
- dart
- ADB
- 스튜디오
- WebView
- 코루틴
- 유튜브
- 코틀린
- RecyclerView
- 안드로이드 스튜디오
- MVVM
- 안드로이드
- 깃헙
- Gradle
- coroutine
- error
- 의존성주입
- Github
- 안드로이드스튜디오
- viewpager
- 안스
- 웹뷰
Archives
- Today
- Total
코딩하는 일용직 노동자
http CLEARTEXT 오류 수정하기. 본문
안드로이드 9.0 Pie 부터는 https만 사용하도록 강제합니다.
만약 http로 연결을 시도하면 아래의 에러문구를 보실 수 있습니다.
CLEARTEXT communication to XXXX not permitted by network security policy
하지만 개발중에 접속하는 서버가 https 만으로 구성된 경우는 드믑니다. 이를 해결하기 위한 방법이 있습니다.
#1 targetSdk 버전을 28보다 작게 설정하면됩니다.
하지만 이것은 좋은 방법은 아닙니다. 언젠가는 올려야 하니까요.
#2 usesCleartextTraffic 을 true로 설정하면됩니다.
안드로이드 매니페스트 파일에
<application
android:usesCleartextTraffic="true"
...
>
이렇게 설정을 합니다.
이러면 http 로도 연결이 됩니다.
편리한 방법이긴 합니다만 정식 마켓등록하는 파일에 이런 설정이 되어있을 경우 리젝사유가 됩니다.
#3 res/xml 에 도메인을 등록합니다.
res/xml 에 network_security_config.xml 파일을 생성하고 아래의 내용을 넣습니다.
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">도메인1</domain>
<domain includeSubdomains="true">도메인2</domain>
<domain includeSubdomains="true">도메인3</domain>
</domain-config>
</network-security-config>
그리고 매니페스트 파일에
<application
android:networkSecurityConfig="@xml/network_security_config"
...
>
이렇게 등록해줍니다.
안드로이드가 버전업 할때마가 손봐줘야 할것들이 10개씩 늘어나는 기분입니다. ㅠ.ㅠ 모두 홧팅입니다.
'안드로이드' 카테고리의 다른 글
리사이클러뷰 어댑터 보일러플레이트 코드 (0) | 2020.06.07 |
---|---|
Live Layout Inspector 기능 살펴보기 (0) | 2020.06.04 |
안드로이드 스튜디오 4.0 데이타 바인딩 설정법 변경 (0) | 2020.06.01 |
안드로이드 스튜디오 메모리 설정 변경 (0) | 2020.06.01 |
안드로이드10(Q) 고유식별자 변경에 관하여 (0) | 2020.05.29 |