Let's say I want to try Cloudflare DoH first and then in case of a failure fall back to Google's DoH, How can I do that?
Using a single provider is pretty straightforward, though.
val appCache = Cache(File("cacheDir", "okhttpcache"), 10 * 1024 * 1024)
val bootstrapClient = OkHttpClient.Builder().cache(appCache).build()
val dns = DnsOverHttps.Builder().client(bootstrapClient)
.url("https://dns.google/dns-query".toHttpUrl())
.bootstrapDnsHosts(InetAddress.getByName("8.8.4.4"), InetAddress.getByName("8.8.8.8"))
.build()
val client = bootstrapClient.newBuilder().dns(dns).build()