cleartext HTTP traffic not permitted
2727 단어 Android 이상
안 드 로 이 드 P (9.0) 를 사용 하 는 기종 에 서 는 우리 앱 이 Okhttp 또는 HttpUrlConnection 을 사용 하여 네트워크 요청 을 할 때 logcat 에 다음 과 같은 오 류 를 보고 합 니 다.
원인.
안 드 로 이 드 9.0 부터 네트워크 요청 은 암호 화 되 지 않 은 명문 전송 을 기본적으로 지원 하지 않 습 니 다.
해결 방법
방법
http 를 https 로 변경 합 니 다.
방법
res / xml 디 렉 터 리 에 자원 파일 을 만 듭 니 다. xml 디 렉 터 리 가 없 으 면 먼저 만 듭 니 다.
network_security_config.xml
<network-security-config>
<domain-config cleartextTrafficPermitted="true"/>
network-security-config>
AndroidManifest. xml 목록 파일 의 Application 탭 에 network Security Config 속성 을 추가 하고 위 에서 만 든 것 을 참조 합 니 다.
<manifest ... >
<application android:networkSecurityConfig="@xml/network_security_config"
... >
...
application>
manifest>
이렇게 하면 우리 app 은 http 요청 을 정상적으로 사용 할 수 있 습 니 다.
참고:https://stackoverflow.com/questions/45940861/android-8-cleartext-http-traffic-not-permitted https://developer.android.google.cn/training/articles/security-config#CleartextTrafficPermitted