2.3. Поддержка различных версий платформы Android Studio

Хотя последние версии Android часто используют новые API-интерфейсы, вы должны продолжать поддерживать старые версии Android, пока не устройства не будут обновлены. В этом уроке вы узнаете, как использовать новейшие API, продолжая также поддерживать более старые версии.

Панель инструментов для версий платформы регулярно обновляется, чтобы показать распределение активных устройств, работающих с каждой версией Android, на основе количества устройств, которые посещают магазин Google Play. Как правило, рекомендуется поддерживать около 90% активных устройств, ориентируясь на приложение до последней версии.

Совет. Чтобы обеспечить наилучшие функции и функциональность в нескольких версиях Android, вы должны использовать библиотеку поддержки Android в своем приложении, которая позволяет использовать несколько последних API-интерфейсов платформы в более старых версиях.

 

Укажите минимальные и целевые уровни API (Minimum and Target API Levels)

Файл AndroidManifest.xml описывает детали вашего приложения и определяет, какие версии Android он поддерживает. В частности, атрибуты minSdkVersion и targetSdkVersion для элемента идентифицируют самый низкий уровень API, с которым ваше приложение совместимо, и самый высокий уровень API, с которым вы разработали и протестировали ваше приложение.

Например:

 xmlns:android="http://schemas.android.com/apk/res/android" ... >
     android:minSdkVersion="4" android:targetSdkVersion="15" />
    ...

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

 

Проверка версии системы во время выполнения

Android предоставляет уникальный код для каждой версии платформы в классе Constants. Используйте эти коды в своем приложении для создания условий, которые гарантируют, что код, который зависит от более высоких уровней API, выполняется только тогда, когда эти API доступны в системе.

private void setUpActionBar() {
    // Удостоверьтесь, что мы работаем на Honeycomb или выше, чтобы использовать API ActionBar
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        ActionBar actionBar = getActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
    }
}

Примечание. При анализе ресурсов XML Android игнорирует атрибуты XML, которые не поддерживаются текущим устройством. Таким образом, вы можете безопасно использовать атрибуты XML, которые поддерживаются только более новыми версиями, не беспокоясь о том, что старые версии ломаются, когда они сталкиваются с этим кодом. Например, если вы установите targetSdkVersion = “11”, ваше приложение включает ActionBar по умолчанию на Android 3.0 и выше. Чтобы добавить элементы меню в панель действий, вам необходимо установить android: showAsAction = “ifRoom” в вашем ресурсе XML меню. Это безопасно сделать в XML-файле кросс-версии, потому что более старые версии Android просто игнорируют атрибут showAsAction (то есть вам не нужна отдельная версия в res / menu-v11 /).

 

Использовать стили и темы для платформы

Android предоставляет стандартные темы оформления, которые придают приложениям внешний вид базовой операционной системы. Эти темы могут быть применены к вашему приложению в файле манифеста. Используя эти встроенные стили и темы, ваше приложение, естественно, будет следить за последним внешним видом Android с каждым новым выпуском.

Чтобы ваша activity выглядела как диалоговое окно::

 android:theme="@android:style/Theme.Dialog">

Чтобы ваша activity имела прозрачный фон:

 android:theme="@android:style/Theme.Translucent">

Чтобы применить свою собственную тему, определенную в /res/values/styles.xml:

 android:theme="@style/CustomTheme">

Чтобы применить тему к вашему всему приложению (все действия), добавьте атрибут android: theme в элемент :

 android:theme="@style/CustomTheme">

Подробнее о создании и использовании тем читайте в руководстве «Стили и темы» (Styles and Themes).

You may also like...

Добавить комментарий

Ваш e-mail не будет опубликован.

Lost your password? Please enter your username or email address. You will receive a link to create a new password via email.
Регистрация не требуется. В качестве логина укажите рабочую почту, в качестве пароля - пароль от компьютера.