Самый простой способ реализовать это - использовать этот атрибут AndroidManifest.xml
там, где вы разрешаете все http
для всех запросов:
<application android:usesCleartextTraffic="true">
</application>
Но в случае, если вам нужны дополнительные конфигурации для разных ссылок, например, http
для некоторых доменов, но не для других доменов, вы должны предоставить res/xml/networkSecurityConfig.xml
файл.
Чтобы сделать это в Android 9 Pie, вам нужно установить тег networkSecurityConfig
в манифесте application
так:
<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
<application android:networkSecurityConfig="@xml/network_security_config">
</application>
</manifest>
Затем в вашей xml
папке вы должны создать файл с именем, network_security_config
аналогичным тому, как вы его назвали в Манифесте, и оттуда содержимое вашего файла должно быть таким, чтобы разрешить все запросы без шифрования:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
</network-security-config>
Оттуда вам хорошо идти. Теперь ваше приложение будет делать запросы на все типы соединений. Для получения дополнительной информации по этой теме читайте здесь .