#mobile_native #android #kotlin
Начинающий Android-разработчик рано или поздно сталкивается с задачей определения основных параметров экрана — ширины и высоты. С появлением Apple-подобной «брови» в верхней части дисплея Android-устройств задача стала неочевидной.
Stack Overflow показывает несколько ответов, предполагающих использование двух нативных методов
getSize и getMetrics.У Honor 10 Lite заявленная высота экрана составляет 2340 px, но нативные методы возвращают 2139 px.
Рассмотрим пример вычисления фактического размера экрана Android-устройства.
В методе
DisplaySizeGetter.getSize определяется версия используемого SDK и устанавливается опорный тип SdkType. Для каждого типа SdkType определен свой метод getSize с реализацией алгоритма получения размеров в зависимости от версии SDK.