2016-04-13 1 views

ответ

2

Android представляет аналогичную функциональность в уровне API 23. Это можно сделать в файле network_security_config.xml. Это пример из Android documentation:

<?xml version="1.0" encoding="utf-8"?> 
<network-security-config> 
    <domain-config cleartextTrafficPermitted="false"> 
     <domain includeSubdomains="true">secure.example.com</domain> 
    </domain-config> 
</network-security-config> 

Убедитесь, что вы в том числе ваш network_security_config.xml файл манифеста приложения, как указано в начале документации, в противном случае файл будет проигнорирован.

Есть ли способ указать, что весь трафик для всего домена должен быть зашифрован?

Да. Обновите элемент base-config и установите для атрибута cleartextTrafficPermitted значение false.

<network-security-config> 
    <base-config cleartextTrafficPermitted="false"> 
     <trust-anchors> 
      <certificates src="system" /> 
     </trust-anchors> 
    </base-config> 
</network-security-config> 
+0

Следует отметить, что я не сразу вижу способ принудительного применения TLS 1.2 в манифесте конфигурации/приложения. – vcsjones

+0

Это только указывает TLS на 'secure.example.com' (и его поддомены), правильно? Есть ли способ указать, что * весь * трафик на * весь * домен должен быть зашифрован? –

+0

@FranklinYu жаль, что мне потребовалось ... месяцев ... ответить, но да, см. Обновленный ответ. – vcsjones