2016-11-02 10 views
1

Как Android работает с ретро-совместимостью?Ретро-совместимость в Android

Например. В моем манифесте я установил минимальный SDK 4.0. Моя цель 7.0, и, допустим, я использую ConstraintLayout. Однако Android Studio не вызывает никаких ошибок.

Вопросы:

  • ли он собирается показать хорошо просматриваются на устройстве 4.0?
  • Как и почему?
  • Почему мы иногда видим такие тесты, как if (Build.VERSION.SDK_INT >= 9)?
  • Как приложение, выполняющее эти тесты, обычно имеет дело с функциональностью, к которой у них нет доступа (за исключением выброса ошибки «Эта функция недоступна с вашей версией Android)?

ответ

1

Он будет хорошо отображаться на устройстве 4.0?

Это часть библиотеки поддержки. Он должен отображаться везде одинаково, но вы не можете быть уверены, что он будет хорошо выглядеть на каждом устройстве.

Как и почему?

как: поддержка библиотека. Почему, производители настраивают Android. Некоторое немного меньше.

Почему мы иногда видим тесты, такие как if (Build.VERSION.SDK_INT> = 9) ?

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

(Build.VERSION.SDK_INT >= 9) 

Вы проверяете, установлено ли на устройстве, по крайней мере, пряничный пряник. Так как вы поддерживаете с андроид 4 дальнейшими вам не нужно, чтобы проверить

Как приложение выполняет эти тесты, как правило, иметь дело с функциональностью они не имеют доступ к (кроме метания ошибки «Этой функции не доступный с вашей версией Android)

Если вы имеете в виду проверку уровня api, то, если у вас нет возможности повторно реализовать ту же функциональность без использования отсутствующих методов, то он не будет предлагают функциональные возможности для этой версии

+0

Очень ясно. Для цели очистки не было никакой связи между моим примером и тестом на Gingerbread (я копирую его где-то); Я просто искал теоретическое объяснение, которое я получил. Благодаря ! –

+0

приветствуются – Blackbelt