我正在使用此代码来检测用户的位置:
// Acquire a reference to the system Location Manager
locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
// Define a listener that responds to location updates
locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
// Called when a new location is found by the network location provider.
longitude=location.getLongitude();
latitude=location.getLatitude();
}
public void onStatusChanged(String provider, int status, Bundle extras) {}
public void onProviderEnabled(String provider) {}
public void onProviderDisabled(String provider) {}
};
//Or use LocationManager.GPS_PROVIDER
String locationProvider = LocationManager.NETWORK_PROVIDER;
// Register the listener with the Location Manager to receive location updates
locationManager.requestLocationUpdates(locationProvider, 0, 0, locationListener);
Location lastKnownLocation = locationManager.getLastKnownLocation(locationProvider);
if(lastKnownLocation!=null){
longitude=lastKnownLocation.getLongitude();
latitude=lastKnownLocation.getLatitude();
}
我正在获取他的时区和日期时间以将它们添加到 url 中并从 inetrnet 获取一些信息,但如果用户有自动时区复选框,未选中自动日期时间,我得到的数据不正确。那么我该如何解决这个问题呢?您认为我应该在我的应用程序上提及这一点还是我应该怎么做?谢谢。
您可以调用具有纬度和经度的 Web 服务来检索时区。
请参阅:如何从某个位置获取时区。