区分不可用的位置和不支持Android的位置

时间:2015-07-17 13:19:17

标签: android gps

在我的应用中,我在操作栏上放置一个图标,以便在应用无法找到当前位置时警告用户。按下图标会弹出一个弹出窗口,告诉他们我无法获取他们的位置并给他们一个按钮来进行设置。但是,如果他们的设备根本不支持位置,我想自定义消息,而不是尝试将它们设置为设置。

有没有办法以编程方式告诉位置关/不可用和没有位置功能的设备?

2 个答案:

答案 0 :(得分:1)

LocationManager类具有您正在寻找的功能。方法getAllProviders()将返回所有已知位置提供者的List个,包括您的活动不允许访问或禁用的任何位置提供者。您也可以致电getProviders(true)以获取当前已启用的List位置提供商。

答案 1 :(得分:1)

如果您使用的是新的Google Play服务位置API, LocationServices.FusedLocationApi.getLocationAvailability()

如果您使用的是位置管理器API -

LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER) // Return a boolean
locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER) // Return a boolean