How to have different network-security-config for different build variants?

Viewed 12628

I would like to trust certificate only in one build-variant. How to make it?

3 Answers

Create a source for the variant. Create a res/xml/ directory in that source set, and put your network security configuration XML in there. Create other stuff in that source set as needed (e.g., res/raw/ and your certificate). In that source set, create an AndroidManifest.xml file, with an <application> element that just has the android:networkSecurityConfig attribute and nothing else.

And you should be done.

Builds for this variant will include your source set, merge in the android:networkSecurityConfig attribute, and leverage the resources tied to it. Builds for other variants will ignore this source set, leaving you without a network security configuration.

You can create build_variant folder inside src and your network_config file inside that

below is some sample for different icon for different build_variant. same way we can do for network_config file

/src/build_variant/res/xml/network_security_config.xml

Exmaple

Related