Я не знаю, какой метод вы вызываете, но здесь есть две разные вещи.
Android построен на Java, что означает, что у вас установлена версия Java на вашем телефоне для запуска ОС.
Поскольку java получает обновления, в инфраструктуру добавляются некоторые методы, поэтому в 1.8 есть методы, которых нет в 1.7
Но Android также является платформой, которая получает обновления, вна этот раз мы являемся 28-й версией (https://developer.android.com/studio/releases/platforms).
Каждая из этой версии имеет новый набор методов, которых нет в предыдущей.
Так что если вы вызываете метод, которыйбыл представлен в Android 22, и вы запускаете свое приложение на телефоне API 16, это приведет к сбою.
Чтобы предотвратить это, вам придется окружить код, который требует Android API 22,
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) {
// call the method that needs API 22 at least
} else {
// do something backward compatible
}