Я не могу комментировать ответы, но в ответе Каушика есть огромная ошибка: SDK_INT не совпадает с версией системы, но фактически относится к уровню API.
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
//this code will be executed on devices running ICS or later
}
Значение Build.VERSION_CODES.ICE_CREAM_SANDWICH
равно 14. 14 - это уровень API Ice Cream Sandwich, в то время как системная версия - 4.0.Поэтому, если вы напишите 4.0, ваш код будет выполняться на всех устройствах, начиная с Donut, потому что 4 - это уровень API Donut (Build.VERSION_CODES.DONUT
равно 4).
if(Build.VERSION.SDK_INT >= 4.0){
//this code will be executed on devices running on DONUT (NOT ICS) or later
}
Этот пример является причиной, почему«магическое число» - вредная привычка.