понедельник, 1 октября 2012 г.

Оптимизация приложения под разные разрешения


Вопрос о разработке приложения с поддержкой большого числа разрешений всегда встает ребром у разработчиков под Android. Поскольку число различных девайсов уже превысило 1000. В этой статье я расскажу об одном из способов поддержки разных разрешений в своем приложении. 

Что  используется

В основе моего метода оптимизации лежит  такая характеристика экрана, как Размер (Size). Сейчас существуют следующие спецификаторы:
  • Small: используется для ресурсов с маленькими экранами (в основном это 240x320);
  • Normal: используется для ресурсов с нормальными экранами (в основном это 480x800);
  • Large: используется для ресурсов с большими экранами (в основном это 600x1024 или планшеты 7”);
  • Xlarge: используется для ресурсов с очень большими экранами (в основном это 1280x800 и выше или планшеты от 9”).
Если есть возможность использовать Nine-Patch изображения, то лучше их использовать.

Применение


Размеры шрифтов и элементов мы будем хранить в ресурсном файле dimen.xml
Для размеров шрифта:
<dimen name="txt_size_12">12sp</dimen>
Для размеров элементов:
<dimen name="image_width_50">50dp</dimen>
Для использовавания этих размеров в xml применяется  спецификатор @dimen.
Например:
android:textSize="@dimen/txt_size_12"
или
android:layout_width="@dimen/image_width_50"
Способ оптимизации заключается в создании и подгонка размеров для разных экранов. Для этого можно использовать эмуляторы с разными разрешениями.

Ограничение устройств в Google Play


Видимость вашего приложения для различных размеров экранов можно ограничить с помощью следующего кода в AndroidManifest:
<supports-screens android:smallScreens="true"
                  android:normalScreens="true"
                  android:largeScreens="true"
                  android:xlargeScreens="true"
                  android:anyDensity="true"/>

Ссылки по теме


Комментариев нет:

Отправить комментарий