Подтвердить что ты не робот

Использование дизайна материалов для Android L на KitKat

Чтение раздела совместимости в Android L Developer Preview (http://developer.android.com/preview/material/compatibility.html) Я видел, что я могу создать APP, используя L- sdk, а также сможете запускать его на старшем sdk (например, KitKat).

Я создал новый проект с помощью Android L sdk и настроил "build.gradle", как сказано в этом сообщении: Android Studio: Failure [INSTALL_FAILED_OLDER_SDK].

Я пробовал обе конфигурации:

  • тот, который был предложен в вопросе, который дает мне эту ошибку:

    pkg: /data/local/tmp/com.example.{my user name}.materialapp Failure [INSTALL_FAILED_OLDER_SDK]

  • и тот, который предлагается в ответ, который дает мне ошибку на

    <style name="AppTheme" parent="android:Theme.Material.Light"></style>

Я искал другие вопросы в StackOverflow, но я не могу найти никаких решений.

РЕШЕНИЕ: Android L Предварительный просмотр стиль материала может использоваться только на устройствах, работающих под управлением Android L. "Совместимость" - это только предварительный просмотр, и он не включен.

4b9b3361

Ответ 1

Вам нужно создать 2 разных файла styles.xml с тем же именем, которое вы поместите в разные папки.

Первая, пойдет здесь:

res/styles.xml

и не будет смотреть ссылку на тему Material (используйте тему Holo):

было бы примерно так:

<style name="AppTheme" parent="android:Theme.Holo.Light"></style>

Второе пойдет здесь:

res/values-v21/styles.xml

и будет содержать ссылку на новую тему Material и будет иметь:

<style name="AppTheme" parent="android:Theme.Material.Light"></style>

Рамка Android будет автоматически использовать правильный вариант, в зависимости от того, какой API поддерживает устройство (поэтому на устройствах API 21 он будет использовать Material, а на всех других устройствах будет использовать все, что вы определили).

Ответ 2

Это изменилось с момента первоначального ответа, поскольку Google опубликовала лучшую поддержку дизайна материалов в библиотеках AppCompat (которые поддерживают в основном все версии Android).

На этом этапе вы должны использовать эти библиотеки для всех разработок, тогда вы сможете поддерживать связанные с материалами функции во всех своих приложениях.

Вот как это настроить: https://developer.android.com/topic/libraries/support-library/setup.html