Программный поиск доступности оборудования на устройствах Android

Я разрабатываю приложение на основе GPS/акселерометра/гироскопа и линейного ускорения. Я хотел узнать, могу ли я каким-либо образом узнать доступность оборудования (акселерометр/гироскоп и линейное ускорение) на моем устройстве. Потому что, как и на указанных форумах, доступны API для проверки доступности датчиков, но ничего не связано с доступностью оборудования в устройстве. Заранее спасибо.


person Shweta    schedule 17.09.2012    source источник
comment
Вы хотите проверить наличие GPS?   -  person Chirag    schedule 17.09.2012
comment
@ChiragRaval: я хочу проверить доступность оборудования для акселерометра/гироскопа и линейного ускорения.   -  person Shweta    schedule 17.09.2012
comment
@ChiragRaval: спасибо за ваш ответ. Я работал над вашим предложением и сослался на anddev.org/accessing_the_accelerometer- t499.html. Однако я получаю ту же ошибку. Датчики не могут быть разрешены для переменной... Нужно ли мне импортировать что-либо еще или сделать какое-либо другое объявление в моем файле manifest.xml   -  person Shweta    schedule 17.09.2012


Ответы (1)


Проверьте наличие GPS на устройстве Android.

PackageManager pm = context.getPackageManager();
boolean hasGps = pm.hasSystemFeature(PackageManager.FEATURE_LOCATION_GPS);

/* Здесь в конструкторе один раз проверьте, * доступен ли на этом устройстве акселерометр. */

/** Истинно, когда функция акселерометра в основном доступна. */

boolean accelerometerAvailable = false;

for (String aSensor : Sensors.getSupportedSensors())
     if (aSensor.equals(Sensors.SENSOR_ACCELEROMETER))
         accelerometerAvailable = true;

      if (!accelerometerAvailable)
           throw new UnsupportedOperationException("Accelerometer is not available.");

Проверьте эту ссылку, чтобы узнать, доступен ли акселерометр на этом устройстве.

person Chirag    schedule 17.09.2012