我想找到一块代码,可以告诉我,android手机是否有GPS设备?我在搜索结果中获得的大部分样本都告知GPS是否启用。我感兴趣的是Android手机是否有物理GPS设备?如何检查手机是否有GPS设备?
感谢
我想找到一块代码,可以告诉我,android手机是否有GPS设备?我在搜索结果中获得的大部分样本都告知GPS是否启用。我感兴趣的是Android手机是否有物理GPS设备?如何检查手机是否有GPS设备?
感谢
public boolean hasGPSDevice(Context context)
{
final LocationManager mgr = (LocationManager)context.getSystemService(Context.LOCATION_SERVICE);
if (mgr == null) return false;
final List<String> providers = mgr.getAllProviders();
if (providers == null) return false;
return providers.contains(LocationManager.GPS_PROVIDER);
}
与API级别8(升级Froyo)开始,您可以使用下面的代码:
PackageManager packageManager = mContext.getPackageManager();
boolean hasGPS = packageManager.hasSystemFeature(PackageManager.FEATURE_LOCATION_GPS);
在Kindle Fire上测试(没有GPS),它的作用就像一个魅力。 –
处理时间少于LocationManager#getAllProviders() –
+ 1你的回答是有道理的。但是在模拟器中,即使我做'GPS支持=否',这个代码也会返回true。有任何想法吗?可能是这将在没有GPS的手机上很好地工作,它将返回假,但不知道... –