【发布时间】:2017-03-01 16:36:05
【问题描述】:
我正在开发一个安卓应用程序,我想从智能手机接收坐标。两个问题:
1: GPS 开启了,但是没有信号,所以我没有坐标。如何检查 GPS 是否正在发送坐标?
2:如果启用了 GPS 并且没有信号,我可以使用其他哪种方法从智能手机获取坐标?
【问题讨论】:
我正在开发一个安卓应用程序,我想从智能手机接收坐标。两个问题:
1: GPS 开启了,但是没有信号,所以我没有坐标。如何检查 GPS 是否正在发送坐标?
2:如果启用了 GPS 并且没有信号,我可以使用其他哪种方法从智能手机获取坐标?
【问题讨论】:
获取坐标需要使用定位服务,默认情况下,定位服务使用各种方式来确定位置,不仅是 GPS,还包括蜂窝信号。这是一个tutorial 在 Android 中使用定位服务。
忠告 - 如果您打算使用 GPS 并通常分发您的应用程序,请知道 GPS 服务非常耗电。它需要明智的编码才能不耗尽用户的电池。您已被警告!
【讨论】:
LocationManager.NETWORK_PROVIDER。该特定代码位使用蜂窝网络来确定位置。它不如 GPS 准确,但很接近。
1) 使用 locationService 获取设备坐标。
mContext = getActivity();
mLocationManager = (LocationManager) mContext.getSystemService(Application.LOCATION_SERVICE);
mLocationManager.requestLocationUpdates(mProvider, 60000, 100, mAttLocationListener);
boolean gpsEnabled = mLocationManager.isProviderEnabled(mProvider);
2) 您仍然可以使用隐藏在 wi-fi 中的位置信息进行粗略估计
【讨论】: