Здание для Froyo, Стиль для ICS - PullRequest
1 голос
/ 16 февраля 2012

Я планирую написать приложение и построить на 2.2 Froyo (API Level 8). Однако я хочу, чтобы пользователи приложения 4.0 ICS испытали приложение с пользовательским интерфейсом ICS.

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

Если оно меньше 4.0, используйте представления XML, написанные для Gingerbread и Froyo, и, если оно 4.0 или выше, использовать представления ICS XML. Это, однако, кажется немного случайным, и я не уверен, что смогу эффективно управлять разделением представлений версий.

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

Ура!

Ответы [ 2 ]

3 голосов
/ 16 февраля 2012

Если вы просто хотите применить разные ресурсы для разных версий ОС, вы можете позволить системе сделать это за вас, поместив ваши ресурсы в разные папки ресурсов с квалификатором «v».Например, папка layout-v8 для макетов, используемых для Froyo, и layout-v14 для макетов, используемых для ICS.Я не пробовал это, но из документа , это то, что он предполагает делать.

0 голосов
/ 16 февраля 2012

Приложение Crunchyroll (программа просмотра аниме) имеет отдельные действия и макеты для Froyo и Honeycomb / Google TV, по умолчанию одно или другое при первоначальном запуске и после этого позволяет пользователю объявить предпочтение одному или другому. Я не связан с CR, но я использую и изучил приложение. Одной из проблем, с которой сталкивается приложение, которая может поощряться уровнем разделения между этими двумя целями, является то, что интерфейс перед сотовой разверткой имеет много функций и продолжает получать обновления, что интерфейс планшета / телевизора только обещан.

Что касается инструментов, вы можете использовать более поздние функции при нацеливании на более раннюю ОС с помощью пакета поддержки SDK , который соответствующим образом возвращает функции (например, фрагменты).

...