0

このコードを使用して、ユーザーの場所を検出しています。

 // 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から情報を取得するために彼のタイムゾーンと日時を取得していますが、ユーザーが自動タイムゾーンのチェックボックスを持っている場合、自動日時がオフになっていると、誤ったデータが取得されます。では、どうすればこれを修正できますか?これをアプリのメモとして言及する必要があると思いますか、それともどうすればよいですか? ありがとう。

4

1 に答える 1

1

緯度と経度を使用して Web サービスを呼び出し、タイム ゾーンを取得できます。

参照:場所からタイム ゾーンを取得する方法

于 2014-01-18T11:06:59.973 に答える