Поддельное или поддельное местоположение на телефоне Android
Я пытался заставить это работать в течение нескольких дней без успеха. По сути, я пишу небольшое тестовое приложение, чтобы телефон сообщал о своем положении, как где-то еще, используя addTestProvider, setTestProviderLocation и т. Д. В основном, он выглядит нормально и, по-видимому, сообщает о своем местоположении как изменившемся, однако Google Maps и т. Д., Похоже, все еще запрашивают настоящий провайдер GPS. У кого-нибудь есть идеи как обойти это?
Это не приложение, которое на самом деле будет использоваться для чего-либо, это просто для того, чтобы удовлетворить мое любопытство и получить понимание.
Заранее спасибо.
1 ответ
Сначала необходимо разрешить приложению использовать пробные местоположения, добавив следующее в XML-файл манифеста:
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/>
На вашем телефоне убедитесь, что "Ложные местоположения" включены, выбрав "Разрешить ложные местоположения" под Settings -> Applications -> Development
меню.
А затем используйте провайдера фиктивного местоположения, чтобы указать поддельные местоположения (например, считывая данные из файла /db)
В качестве альтернативы вы можете подключиться к телефону по телефону и смоделировать местоположение (опять же, вам нужно разрешить и смоделировать местоположение на вашем телефоне):
$ telnet localhost 5554
Android Console: type 'help' for a list of commands
OK
geo fix -82.411629 28.054553
OK