Я заблокирую пользователям использование моего приложения, если они имитируют местоположение.
Поэтому я использую isFromMockProvider
, чтобы проверить, не является ли местоположение поддельным (следуйте здесь). Но в некоторых случаях isFromMockProvider()
может возвращать false для поддельных локаций.
public void onLocationChanged(Location location) {
textView.append("long:"+location.getLatitude()+" - lat:"+location.getLongitude()+" - isMock :"+location.isFromMockProvider() + "\n");
}
В моем случае: я использую приложение Поддельное местоположение GPS для подделки местоположения, затем отключаю поддельное местоположение и захожу в свое приложение. Затем onLocationChanged возвращает поддельное местоположение с isFromMockProvider() = false
Видеомагнитофон: https://www.youtube.com/watch?v=rWVvjOCaZiI (в этом видео мое текущее местоположение - 16.06, 108.21, поддельное местоположение - 36.26, 138.28. Вы можете видеть в последнем видео, что местоположение - 36.26, 138.28, но isFromMockProvider = false)
Есть ли способ определить, использует ли пользователь в этом случае поддельное местоположение? Буду признателен за любую помощь или предложение.
ДЕМО проект