Приложение будет нормально работать на устройстве и в эмуляторе с атрибутом android:icon, указанным только в дескрипторах , но когда средство Android Market просматривает загруженный файл.apk для приложения, оно ищет информацию о значке в дескрипторе . Кроме того, Android Market запрещает загрузку приложения, если используемое имя пакета начинается с com.google, com.android, android или com.example.
Для приложения понадобится принимать во внимание множество других аспектов, связанных с совместимостью. Некоторые устройства имеют камеры, некоторые не оснащены физической клавиатурой, а в некоторых установлен трекбол вместо контактной панели. Для определения требований приложения к оборудованию и/или платформе применяются дескрипторы и в файле AndroidManifest.xml. Android Market будет учитывать эти требования и не покажет приложение пользователю устройства, которое его не поддерживает. Обратите внимание, что эти дескрипторы совершенно отличаются от дескрипторов в файле AndroidManifest.xml. Хотя устройство пользователя может быть оснащено камерой, это не значит, что пользователь желает выдать приложению права на ее использование. В то же время, заявление о том, что приложению нужны права на работу с камерой, не говорит Android Market, что приложение требует обязательного наличия камеры на устройстве. В большинстве случаев в файле AndroidManifest.xml будут присутствовать оба дескриптора, один для указания того, что камера является обязательной, а другой — для запроса прав на ее использование. Однако не все средства требуют прав доступа, поэтому в ваших интересах явно указать, что конкретно необходимо приложению для работы.
Между и имеется и другое крупное отличие: с помощью дескриптора можно сообщить, что приложение требует наличия данного средства или же может функционировать без него. Другими словами, существует атрибут по имени android:required, который может быть установлен либо в true, либо в false, и по умолчанию имеет значение true. Например, приложение может получить преимущества от наличия интерфейса Bluetooth, но вполне способно обойтись и без него. Таким образом, в файле манифеста будет присутствовать примерно такая строка:
"android.hardware.bluetooth" android:required="false" />
В коде приложения с помощью обращения к PackageManager необходимо выяснить, доступен ли интерфейс Bluetooth:
boolean hasBluetooth = getPackageManager.hasSystemFeature(
Затем следует предпринять определенные действия, если Bluetooth отсутствует. В документации по Android эта область несколько запутанна. На странице руководства разработчика, посвященной , вы не у столько средств, сколько описано на справочной странице по классу PackageManager, где определены константы FEATURE_ для каждого доступного средства.
Заходите на сайт об http://ipnet.ua/tv.html, если вы хотите узнать больше о цифровом телевидении в Киеве.
Дескриптор несколько отличается. С его помощью указывается, какой вид клавиатуры, сенсорного экрана и средства управления навигацией устройство должно иметь. Вместо определения индивидуальных опций посредством можно задать конфигурацию аппаратных средств, которая требуется приложению. Например, если приложению нужно средство управления навигацией в пяти направлениях (т.е. D-pad или трекбол) и сенсорный экран (работающий либо с пером, либо с пальцами), можно задать следующие дескрипторы:
Опубликовал katy
February 21 2015 13:49:56 ·
0 Комментариев ·
2572 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.