As of Android API 23, there exists AudioManager.getDevices()
which can be used to obtain information about various hardware devices. I'm building an app that targets API 22 and need a way to figure out which hardware device supports the highest sample rate, number of channels, bit depth (etc.), and what those specific values are, but can't seem to figure out how to go about it. Can someone point me in the right direction?