2013-07-17 2 views
0

Можно ли получить точную широту и долготу пользователя через «GPS» после изменения его местоположения на очень короткое расстояние, например, 3-4 фута.поиск текущего местоположения в android через GPS

Фактически я сделал приложение в android, которое дает мне широту и долготу пользователя, но меняет его значение в той же точке или местоположении пользователя.

Просьба помочь мне решить эту проблему. благодарит заранее.

+0

См. [здесь] (http://www.androidhive.info/2012/07/android-gps-location-manager-tutorial/) –

ответ

0

Мой опыт говорит, что это зависит от телефона/устройства вы используете, если ваше устройство AGPS поддержки затем получить координаты GPS будет проще и быстрее (Нет связанных с вашим умение кодирования, так как вы будете использовать SDK для Android). Обычный GPS также возвращает точные данные, попробуйте загрузить приложение Savaari из игры Google, он работает как шарм, ваш второй вопрос. Да, можно получить координаты после определенного интервала времени или расстояния, когда вы регистрируете своего регистратора, вам нужно предоставить время и расстояние (в метрах), после которого вы хотите получить значение GPS.

Заканчивать этот фрагмент: -

public void startReadingGPS(int readAfterMinimumTime, int readAfterMinimumDistance){ 
     locationManager = (LocationManager)mContext.getSystemService(Context.LOCATION_SERVICE); 
     locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, readAfterMinimumTime, readAfterMinimumDistance, this); 
    } 

общественных пустоты requestLocationUpdates (поставщик Строки, длинный minTime, плавать minDistance, LocationListener слушатель) Добавлена ​​в уровне API 1 Регистрации для обновления местоположения с использованием имени поставщика и ожидающее намерения.

См. RequestLocationUpdates (long, float, Criteria, PendingIntent) для более подробной информации о том, как использовать этот метод.

Параметры поставщика имя поставщика, с помощью которого к регистрации minTime минимальной временной интервал между обновлениями местоположения в миллисекундах minDistance Минимального расстояния между обновлениями местоположения, в метрах слушателя LocationListener которого onLocationChanged метод (Местоположение) будет называться для каждого обновления местоположения

+0

Цените свой ответ, но моя другая проблема заключается в том, что я никогда не будет изменяться по местоположению, но GPS будет постоянно ИЗМЕНИТЬ широту и долготу. предложите, как стабилизировать его в одном месте. – AKber

+0

добавьте с 8 до 10 метров в свой приемник вашего местоположения на самом деле в случае Android GPS его точность составляет около 8 метров, что означает, что даже если вы держите свой телефон в одном месте, он будет продолжать менять координаты, мой прием будет добавлять GPS-считывание через 10 метров , всего наилучшего ! –

0

вы должны реализовать locationlistener в своей деятельности

private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 10; // 10 meters 

     // The minimum time between updates in milliseconds 


     private static final long MIN_TIME_BW_UPDATES = 1000 * 60 * 1; // 1 minute 


      boolean isGPSEnabled = false; 

       LocationManager locationManager = (LocationManager) yourapplicationcontext 
             .getSystemService(LOCATION_SERVICE); 

           // getting GPS status 
           isGPSEnabled = locationManager 
             .isProviderEnabled(LocationManager.GPS_PROVIDER); 
      if (isGPSEnabled) { 
          if (location == null) { 
           locationManager.requestLocationUpdates(
             LocationManager.GPS_PROVIDER, 
             MIN_TIME_BW_UPDATES, 
             MIN_DISTANCE_CHANGE_FOR_UPDATES, this); 
           Log.d("GPS Enabled", "GPS Enabled"); 
           if (locationManager != null) { 
            location = locationManager 
              .getLastKnownLocation(LocationManager.GPS_PROVIDER); 
            if (location != null) { 
             latitude = location.getLatitude(); 
             longitude = location.getLongitude(); 
            } 
           } 
          } 
         } 
//Add this permission 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
Смежные вопросы