我们可以通过互联网获得设备当前的经纬度吗?我正在使用以下代码..我在按钮点击后触发位置监听器 .
locationListener = new MyLocationListener();
location.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 5000, 20, locationListener);
private class MyLocationListener implements LocationListener
{
@Override
public void onLocationChanged(Location loc)
{
longitude = String.valueOf(loc.getLongitude());
latitude = String.valueOf(loc.getLatitude());
...
}
}
它在连接到互联网时获取经度和纬度值,但在未连接到互联网时返回null .
可能是什么问题呢? LocationManager.NETWORK_PROVIDER,5000,20,locationListener是否需要互联网才能获得lat和long?
如果需要互联网,那么网络提供商NETWORK_PROVIDER和GPS_PROVIDER之间有什么区别?
1 回答
网络提供商将Cell ID / WiFi读数信息转换为lat / long地址,并且需要数据连接才能这样做 . (它访问Google的服务器,其中包含此类信息的数据库)
使用GPS提供商 . 它不需要互联网 .