Создание приложения, которое имеет дополнительные функции в v11, но все еще работает в v7 - PullRequest
1 голос
/ 17 августа 2011

У меня была проблема с этим, и я пытался справиться с этим и не мог понять, как использовать ActionBar в приложении при работе на v11 / 3.0 +, а затем использовать собственный ActionBar в v7 /2.1

Проблема в том, что когда вы используете какие-либо теги (например, android:actionBarStyle) или библиотеки из библиотеки v11, ваше приложение больше не будет компилироваться с библиотекой ниже, чем v11.Поэтому вы не сможете запустить его на телефоне.

Однако

Я искал источник в GoogleПриложение IO 2011, и оно использует v7 в качестве библиотеки по умолчанию.Однако он предназначен для использования ActionBar, так как содержит тег выше (android:actionBarStyle).Но так как у меня есть встроенная версия на моем телефоне, и у нее есть много кода для создания поддельного ActionBar, когда на устройствах ниже v11 он, очевидно, должен быть в состоянии быть собранным на обоих.

Очевидно, что существуетзагадка, которую мне не хватаетКак получить сборку приложения Google IO 2011?Какой механизм используется для разработки нескольких версий одновременно?

Кто-нибудь, пожалуйста, помогите.

1 Ответ

1 голос
/ 17 августа 2011

Глупый Вопрос, который возникает из-за того, что я путаю себя из-за трех разных проблем, которыми я занимаюсь.

Приложения, созданные с использованием библиотеки v11, будут успешно работать на телефоне, если для атрибута android:minSdkVersion в файле AndroidManifest.xml установлено значение версии телефона или ниже. Однако функциональность, которая зависит от более поздних библиотек, не будет работать.

Причина, по которой я думал, что приложение Google IO 2011 поставляется с библиотекой v7 по умолчанию, заключается в том, что я создал проект из источника в eclipse - я не импортировал проект.

(И я напишу это здесь, так как могу - код фрагмента, записанный в код v11 для удобства, не может быть использован, если вы собираетесь использовать фрагменты до v11, поскольку android.app.Fragment не совместим с android.support.v4.app.Fragment. Это просто нужно игнорировать и получать хуки из getSupportManager() и т. Д.).

Итак, я снял свой вопрос:)

...