Я пытаюсь подключиться к встроенному устройству с HTTP-сервером, который отлично работает на android ‹P (пока я не установил targetSdkVersion 28
), потому что было изменение, которое Сетевой TLS включен по умолчанию.
Есть способ отказаться от трафика открытого текста, но кажется, что это возможно только для доменов и не для IP-адресов.
Я пытался установить android:networkSecurityConfig
в манифесте с IP вместо домена, но это не сработало:
<network-security-config>
<domain-config cleartextTrafficPermitted="false">
<domain includeSubdomains="true">172.16.33.1</domain>
</domain-config>
</network-security-config>
Установка этого параметра как <base-config cleartextTrafficPermitted="false">
тоже не работает.
Таким образом, кажется, что нет никакого способа заставить работать не-TLS связь без домена. Но поскольку это встроенное устройство в локальной сети, у нас нет домена (мы знаем только IP).
Это похоже на серьезную проблему для всех видов встроенных устройств, которые больше не могут обмениваться данными. Кроме того, "новые приложения и обновления существующих приложений требуют на целевой уровень API [28 в ноябре 2020 г.] » (начиная с ноября 2018 г. с API 26 и с каждым годом продвигаясь).
Есть идеи, как это сделать?
cleartextTrafficPermitted
какtrue
, а неfalse
. - person laalto   schedule 21.06.2018true
. Затем он работает с<base-config cleartextTrafficPermitted="true">
для IP-адресов. СПАСИБО! - person hardysim   schedule 21.06.2018