我们可以通过互联网获取设备当前的经纬度吗? 我正在使用以下代码.. 我点击按钮后触发位置监听器。
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之间有什么区别?
答案 0 :(得分:1)
网络提供商将Cell ID / WiFi读数信息转换为lat / long地址,并且需要数据连接才能这样做。 (它访问Google的服务器,其中包含此类信息的数据库)
使用GPS提供商。它不需要互联网。