Как определить устройство Android Tablet, в котором отсутствует GPS? - PullRequest
1 голос
/ 25 марта 2011

У меня есть пользователи планшетов Android, которые сообщают, что не могут использовать мое приложение из-за отсутствия GPS.Я бы ожидал этот вызов:

(LocationManager) getSystemService(LOCATION_SERVICE);

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

Мне не хватает одного из этих устройств на планшете Android без GPS;может кто-нибудь там с одним подскажет, как определить, когда я работаю на таком устройстве, в идеале с 1 или 2-строчным фрагментом кода?

Большое спасибо.

1 Ответ

3 голосов
/ 25 марта 2011

Менеджер местоположений также может использовать сеть для определения местоположения, поэтому, даже если устройство не имеет GPS, вы все равно сможете получить (более грубое) местоположение.

если вы хотите, чтобы у пользователя был gps, то лучше всего включить в свой AndroidManifest тег меток использования: (документы: http://developer.android.com/guide/topics/manifest/uses-feature-element.html)

<uses-feature android:name="android.hardware.location.gps" android:required="true" />

обязательный тег позволяет блокировать их из приложения или просто сообщить им, что это необходимо. но в прямом ответе на ваш вопрос, если вы хотите использовать LocationProvider, чтобы проверить, есть ли GPS, то:

LocationManager.getProvider(LocationManager.GPS_PROVIDER)

вернет ноль.

...