Проверьте, не был ли гео-местоположение подделано - PullRequest
15 голосов
/ 08 июля 2011

Я хочу убедиться, что местоположение, полученное от LocationListener, является "реальным" и не исходит от поддельного источника (т. Е. Приложение Location Spoofer ).Меня не волнует «но пользователь иногда хочет подделать местоположение» - это приложение, которое не распространяется на рынке Android.Приложению не нужно, чтобы местоположение было таким точным - оно просто должно быть «реальным».

Как вы думаете, есть ли способ проверить, было ли место подделано?
Что вы думаетехороший способ предотвратить подмену местоположения?
Может быть, есть метод Android, который, тем не менее, дает мне реальное местоположение?
Возможно, есть метод Android, чтобы определить, была ли подделана локация?

Мысли у меня были:

  • Проверка в черном списке, если установлено приложение подмены местоположения
  • Включение / отключение различных провайдеров местоположения и проверка их возвращенных местоположений
  • Запустите фоновую службу, отслеживая местоположение (в пассивном ключе) и проверьте наличие внезапных изменений местоположения.

Пожалуйста, дайте мне свои мысли и информацию по этому вопросу.

Ответы [ 2 ]

18 голосов
/ 09 августа 2011
  • От имени провайдера: 'gps' или 'network' правильные
  • Большинство спуферов забывают отправлять обновления статуса GPS.Это то, что вы можете использовать в своих интересах

    // returns true if mock location enabled, false if not enabled.

    if (Settings.Secure.getString(getContentResolver(),
           Settings.Secure.ALLOW_MOCK_LOCATION).equals("0")) 
           return false; 
           else return true;
    

Лучший метод заключается в следующем:

  • Макетпровайдеры местоположения не отправляют данные NMEA.Так что создайте слушателя NMEA.Если вы не получаете обновление NMEA, но вы получаете действительные обновления GPS в onLocationChanged (), используется подделка.
3 голосов
/ 22 сентября 2011

Просмотрите тему «Ведение текущей наилучшей оценки» на следующей странице:

Ведение текущей наилучшей оценки

...