Я бы хотел доверять сертификату только в одном варианте сборки. Как это сделать?

6
Mladen Rakonjac 19 Сен 2017 в 16:40

3 ответа

Лучший ответ

Создайте источник для варианта. Создайте каталог res/xml/ в этом исходном наборе и поместите туда XML-файл конфигурации безопасности вашей сети. При необходимости создайте другие элементы в этом исходном наборе (например, res/raw/ и ваш сертификат). В этом исходном наборе создайте файл AndroidManifest.xml с элементом <application>, который имеет только атрибут android:networkSecurityConfig и ничего больше.

И ты должен быть готов.

Сборки для этого варианта будут включать ваш исходный набор, объединяться с атрибутом android:networkSecurityConfig и использовать ресурсы, связанные с ним. Сборки для других вариантов будут игнорировать этот исходный набор, оставляя вас без настройки безопасности сети.

11
CommonsWare 20 Сен 2017 в 12:15

Просто создайте «n» количество настроенных XML-кодов безопасности сети для вашего «n» -го варианта сборки, и тогда вы сможете добавить точный XML-файл сетевой безопасности в ваш XML-манифест Android в зависимости от среды. см. здесь примеры https://developer.android.com/studio/build/ манифест -BUILD -переменные

-1
Karthi 31 Май 2018 в 14:15

Вы можете создать папку build_variant внутри src и файл network_config внутри нее

Ниже приведен пример для другой иконки для другого build_variant. так же, как мы можем сделать для файла network_config

< Сильный > < EM> /src/build_variant/res/xml/network_security_config.xml

Exmaple

-1
Jarvis 31 Май 2018 в 14:38