Как запретить другому пользователю изменять местоположение GPS и обновления местоположения, вызываемые каждый небольшой интервал (скажем, 3 секунды)

Я видел некоторые приложения, такие как gpsspoofer и поддельные приложения gps, которые устанавливают местоположение, чтобы подделать неправильное местоположение, но мое приложение, чтобы получить правильное местоположение, пожалуйста, дайте предложения.

Моя другая проблема

    Loc.requestLocationUpdates(Provider.get(i), 600000, 1000, new LocationListener() {
        @Override
        public void onStatusChanged(String provider, int status,Bundle extras) {
        /// some thing
       }
       @Override
       public void onProviderEnabled(String provider) {
       /// some thing
      } 
       @Override
       public void onProviderDisabled(String provider) {
        /// some thing
       }
       @Override
       public void onLocationChanged(Location location) { 
      /// some thing
      }
     });
    }

Мой вопрос: если я уже установил обновления местоположения на 600000 миллисекунд, то почему onLocationChanged(местоположение) вызывается каждый небольшой интервал< /strong>, что меньше как 1000, так и 6000000


person Community    schedule 21.06.2012    source источник
comment
Простой ответ: вы не можете. Ваше приложение получает местоположение GPS от системы. Эти приложения работают таким образом, что заставляют систему возвращать вам поддельные/неправильные значения. Если вы работаете на рутированном телефоне и имеете привилегии root, вы можете проверить, перехватываются ли вызовы GPS, и что-то с этим сделать. В противном случае вам не повезло.   -  person Aleks G    schedule 21.06.2012
comment
Обратный вопрос: как определить, существует ли какое-либо моделирование GPS? gpscreations.com/Products_GPS_SIM14.html Другими словами, вы никогда не можете быть уверены. Даже для программных решений, если вы проверяете, приложения могли ожидать этого и иметь механизмы анти-проверки; поэтому вам нужно проверить их; этого тоже можно было ожидать и т.д. - черепахи до упора :-(   -  person Piskvor left the building    schedule 21.06.2012


Ответы (2)


Насколько я знаю, это возможно. GPS можно получить из двух вещей. GPS с самого телефона, этот может быть подделан кем-то без рут-доступа с помощью mocklocation. а кто-то с рутом и правами привилегиями без mocklocation включил. Также местоположение пользователя можно вычислить с помощью Wi-Fi (wps). Я не знаю, есть ли способ просто подделать местоположение wps, но если вы объедините эти два, а это не одно и то же, вы можете узнать, подделывает ли кто-то GPS.

person Dion Segijn    schedule 02.01.2013

Простой ответ: вы не можете. Ваше приложение получает местоположение GPS от системы. Эти приложения работают таким образом, что заставляют систему возвращать вам поддельные/неправильные значения. Если вы работаете на рутированном телефоне и имеете привилегии root, вы можете проверить, перехватываются ли вызовы GPS, и что-то с этим сделать. В противном случае вам не повезло.

Обратный вопрос: как определить, существует ли какое-либо моделирование GPS? http://gpscreations.com/Products_GPS_SIM14.html То есть вы никогда не можете быть уверены . Даже для программных решений, если вы проверяете, приложения могли ожидать этого и иметь механизмы анти-проверки; поэтому вам нужно проверить их; этого тоже можно было ожидать и т.д. - черепахи до упора :-(

person Community    schedule 07.09.2012