문제

기본 동작을 무시할 수있는 쉬운 방법이 있습니까? 지리적 위치 API 그리고 현재 위치에 하드 코드?

테스트 및 개인 정보 보호 이유 (가짜 위치 데이터 제공)에 유용 할 것이라고 생각합니다.

나는 이것에 대한 추가 사항이 있다고 생각했지만 하나는 찾을 수없는 것 같습니다. 현재 유일한 옵션은 config geo.wifi.url을 일부 대체 웹 서비스로 바꾸는 것 같습니다.

어떤 아이디어?

감사

이상적인 시나리오

누군가는 Google지도가 나타나는 곳에 애드온을 구현하고 새로운 기본 위치를 선택할 수 있습니다.

도움이 되었습니까?

해결책

geo.wifi.uri는 웹 서비스 일 필요는 없습니다. 파일로 로컬 URI로 설정할 수도 있습니다. // ...

파일은 다음과 같은 컨텐츠가있는 JSON 파일이어야합니다.

{"location": {
              "latitude": 48.777025000000002, 
              "longitude": 9.1713909999999998, 
              "accuracy": 10.0}}

업데이트:Firefox 9+의 경우 형식이 변경되었습니다.

{
    "status": "OK",
    "accuracy": 10.0,
    "location": {"lat": 48.777, "lng": 9.171}
}

또는 두 가지를 모두 지원할 수 있습니다.

{
    "status": "OK",
    "accuracy": 10.0,
    "location": {
        "lat": 48.777,
        "lng": 9.171,
        "latitude": 48.777,
        "longitude": 9.171,
        "accuracy": 10.0
    }
}

업데이트: Google 서비스를 가정 할 때 제공 업체 가이 기본 설정을 수동으로 설정하는 것처럼 보입니다. 보다 버그 716453 Update 2: geo.wifi.uri not geo.wifi.url

다른 팁

가장 쉬운 방법은 탐색하는 것입니다 about:config 그런 다음 필터 상자에 들어갑니다 geo.wifi.uri, 나타나는 유일한 구성 행을 두 번 클릭하고 교체 후 아래 값을 입력하십시오. xxx 그리고 yyy 코디네이트와 같은 서비스에서 얻을 수 있습니다 http://www.getlatlon.com/:

data:application/json,{"location":{"latitude":xxx,"longitude":yyy,"accuracy":10}}

이 트릭에는 추가 기능이나 로컬/호스팅 파일이 필요하지 않습니다. 값이 공간이없고 단일 줄에 있는지 확인하십시오!

Geolocater 지리적 위치를 편집 할 수있는 실험 애드온입니다.

Chrome에서는 사용할 수 있습니다 수동 지리적 위치 크롬 확장. 수동 위치를 그래픽으로 선택할 수 있습니다.

흠, 당신은 조롱 할 수 없습니다 navigator.geolocation 직접 - 아마도 다른 객체를 사용하는 데 사용하는 코드를 리팩터 할 수 있습니다. customGeoLocation.

생산에서 당신은 방금 설정할 수 있습니다 customGeoLocation 에게 navigator.geolocation 테스트에서 사용하는 기능의 모의 구현을 사용합니다.

편집하다: 기능을 바꿀 수 있습니다 navigator.geolocation 대상이지만 모의 개체를 만들어야하는 모의 라이브러리 (예 : jsmock)를 사용하는 경우에도 여전히 쓸모가 없습니다. 따라서 교체 할 수 없습니다 navigator.geolocation 모의와 함께.

이런 방식으로 조롱하는 것을 할 수 있습니다.

var getCurrentPositionCalled = false;
navigator.geolocation.getCurrentPosition = function() { 
  getCurrentPositionCalled = true; 
};

//Your app code here
//...
assert(getCurrentPositionCalled);

Firefox Geolocation에 Google Latitude를 연결했습니다. 이렇게하면 위도와 경도를 직접 찾아서 로컬 파일에 입력하는 대신 단일 마우스 클릭으로 Google 위도에서 위치를 수동으로 업데이트 할 수 있습니다. 주제에 관한 나의 기사입니다 Firefox가 Google Latitude에서 지리적 위치를 가져 오십시오.

솔루션에는 소량의 서버 측 코딩이 필요했지만 (기사에서 소스 코드를 제공합니다), 당분간이 코드를 사용할 수있는 무료 라이브 서비스로 실행하고 있습니다.

건배, 메타

브라우저의 geo.wifi.uri를 지적 할 수있는 지리적 위치 엔드 포인트 역할을하는 간단한 웹 응용 프로그램을 만들었습니다. Google API 사양과 호환됩니다. 이를 사용하려면 [위도] 및 [경도]를 원하는 값으로 대체하여 다음을 입력하십시오.

http://geolocation-mocker.phitherek.me/geolocate/[latitude]/[longitude]

그리고 작동해야합니다. 서비스가 올라 있는지 확인하려면

http://geolocation-mocker.phitherek.me

HTML 페이지가 올바르게 표시되는지 확인하십시오. 이 간단한 앱의 소스 코드를 찾을 수 있습니다.

https://github.com/phitherek/geolocation-mocker

이 도구가 유용 할 수 있기를 바랍니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top