How does sourceCompatibility and targetCompatibility impact number of supported devices?
The android toolchain does some extra steps before the code is run on your device: .java -> .class -> .class (desugared) -> .dex This is described here: https://developer.android.com/studio/write/java8-support The desugaring step is responsible for turning your modern bytecode into something that works on older VMs. How backwards compatible the desugaring makes your code depends on … Read more