2017-04-03 4 views
0

나는 지오 펜스에서만 Android 앱을 개발 중입니다.Android : 지오 펜스 용 모의 위치 사용 안함

개념 : 지오 펜스에 대한 기본 개념은 사용자가 특정 지리적 위치에 맞는 게임을 할 수 있다는 것입니다.

문제점 : 모든 것이 정상적으로 작동하지만 FakeGPS 응용 프로그램은 here에서 다운로드했습니다. 나는 집에 있었고 게임을 할 수있는 곳에서 원하는 위치를 설정했습니다. 내 응용 프로그램은 지리적 위치를 감지하고 집에서 게임을 할 수 있습니다. 실제로 그것은 지리적 위치에서만 해당 게임을해야했습니다.

솔루션 : 나는 위치가 주어진 코드에 의해 GeofenceIntentService 클래스에 MockProvider 여부에서 오는 것을 확인했다.

boolean isMockLcoation = geofencingEvent.getTriggeringLocation().isFromMockProvider(); 

하지만 신뢰할만한 해결책은 아닙니다. 나는 매번 정확한 결과를 얻지 못하고있다.

나는 LocationAssistance 서비스를 확인했지만 어쨌든 그것은 지오 펜스 나를 도울 수 없었다.

목표 : 내 신청서 모의 위치를 ​​사용 중지하거나 위치가 사실인지 또는 모의인지 구별하고 싶습니다.

답변

0

당신은 모의 위치 설정이 활성화되어 있는지 확인 할 수 있습니다. 여기에 대한 답변이 있습니다. 또는 동일한 답변의 코드를 사용하면됩니다.

https://stackoverflow.com/a/16776891/5318240

public static boolean isMockSettingsON(Context context) { 
    // returns true if mock location enabled, false if not enabled. 
    if (Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ALLOW_MOCK_LOCATION).equals("0")) 
     return false; 
    else 
     return true; 
}