1

我有 Android 平板电脑用户报告说他们无法使用我的应用程序,因为他们没有 GPS。我本来期望这个电话:

(LocationManager) getSystemService(LOCATION_SERVICE);

在此类设备上返回 null,但鉴于我的用户在该领域的报告可能并非如此。

我缺少这些无 GPS 的安卓平板设备之一;有人可以告诉我如何检测我何时在这样的设备上运行,理想情况下使用 1 或 2 行代码片段?

非常感谢。

4

1 回答 1

3

位置管理器还可以使用网络来确定位置,因此即使设备没有 GPS,您仍然可以获取(粗略的)位置。

如果您想要求用户拥有 gps,那么最好的方法是在您的 AndroidManifest 中包含一个 uses-feature 标签:(文档:http: //developer.android.com/guide/topics/manifest/uses-feature-element .html )

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

required 标签允许您从应用程序中阻止他们,或者只是告诉他们这是必需的。但是如果您想使用 LocationProvider 来测试是否有 GPS,那么直接回答您的问题:

LocationManager.getProvider(LocationManager.GPS_PROVIDER)

将返回空值。

于 2011-03-25T05:54:05.550 回答