в своем коде вы использовали Build.VERSION_CODES.N
, что означает Android Nougat , поэтому, когда Android Kitkat старше, чем Android N , Build.VERSION.SDK_INT >= Build.VERSION_CODES.N
не будетправда, но потому что android Oreo новее, чем android Nougat Build.VERSION.SDK_INT >= Build.VERSION_CODES.N
будет верным, и ваш код в случае, если блок будет работать.
вы можете проверить эту ссылку , чтобы увидетьAndroid VERSION_CODES константы.