2017-04-26 1 views
-1

클라이언트 용 웹 응용 프로그램 빌드 및 클라이언트 용 모바일 응용 프로그램이 있습니다. 배경 서비스를 사용하여 설정된 간격으로 위치를 추적 할 수있는 응용 프로그램을 개발했습니다. 그러나, 나는 그것에 추가하고 요청에 따라 위치를 추적하도록 요청 받았다. 즉, 내 웹 앱에서 사용자의 위치를 ​​클릭하면 위도와 경도가 다시 전송됩니다. 이 기능을 시작하는 방법에 대한 정보는 유용 할 것입니다. 귀하의 응용 프로그램 (배경 서비스)에서내 웹 응용 프로그램으로 안드로이드 장치 위치 가져 오기

+0

'기능의 getLocation는() {}는'자바 스크립트 인터페이스 함수를 작성, @Weedoze에서 말했듯이 좋은 시작 – Weedoze

+0

보인다. 이것을 확인하십시오 : http://stackoverflow.com/questions/39657311/using-javascript-bridge-in-android – Vikrant

+0

링크를 이용해 주셔서 감사합니다. 하지만 제 경우에는 제 활동보다는 제 서비스에 써 줄 것입니까? @Vikrant –

답변

0

:

-Write 당신의 데이터베이스 사용자의 웹 애플리케이션에서

에 "마지막으로 알려진 위치"와 같은 위도와 LNG :

-Query 데이터베이스 및 취득 마지막 위치

+0

지금 당장은 내 간격이 1 시간으로 설정되어 있으므로 DB를 통해 내 마지막으로 알려진 위치를 얻는 것이 내 고객을위한 옵션으로 좋지 않을 것입니다. 내 고객의 위치를 ​​얻는 방법이 있습니다. 의뢰? –

0

GCM 서비스를 만들 수 있습니다. 누군가 웹에서 서버로 버튼을 클릭하면 GCM을 통해 Android 클라이언트에게 메시지를 보냅니다. 수신 메시지 이벤트에서 현재 위치를 가져 와서 서버로 보냅니다. this site은 GCM 서비스를 만드는 데 도움이 될 수 있습니다.

+0

현명한 경우에는 작동 할 수있는 것처럼 보이지만 서버로 전송할 때 어떤 문제가 발생할 것으로 예상됩니다. 내가 원하는 것은 webApp의 onclick이며 위도 lng가 삽입 된지도의 부트 스트랩 팝업 모달 또는 Wi-Fi 또는 GPS가 비활성화되어있는 경우 오류 메시지가 표시되는 경우 GCM이 작동한다고 생각합니까? ? 마찬가지로 서버로 전송하는 것을 클릭하면 내 앱으로 보내기 기능을 수행하는 것처럼 문제가 될 수 있지만 어떻게하면 위도 lng가 표시됩니까? –

0

언제든지 기본 JavaScript 메소드 navigator.geolocation을 사용할 수 있습니다. 모바일 및 웹 모두에서 작동합니다. 아래의 예를 참조하십시오.


    var options = { 
     enableHighAccuracy: true, 
     timeout: 5000, 
     maximumAge: 0 
    }; 

    function success(pos) { 
     var crd = pos.coords; 

     console.log('Your current position is:'); 
     console.log(`Latitude : ${crd.latitude}`); 
     console.log(`Longitude: ${crd.longitude}`); 
     console.log(`More or less ${crd.accuracy} meters.`); 
    }; 

    function error(err) { 
     console.warn(`ERROR(${err.code}): ${err.message}`); 
    }; 

    navigator.geolocation.getCurrentPosition(success, error, options); 

example taken from documentation

+0

이 시나리오에서 최종 사용자가 웹 앱으로 위치를 전송할 것이라고 추측합니까? 내가 목표로하는 것은 노트북에서 버튼을 클릭하고 내 최종 사용자 모바일 장치의 위치를 ​​얻는 것입니다. –

+0

그러면 위치를 업데이트/수신해야하는 이벤트를 유지해야합니다. - 장치가 특정 거리를 이동할 경우 위치 정보를 업데이트하는 서비스를 가질 수 있습니다. _ (iOS에서 한 번 사용했습니다) _ - 이벤트를 보내거나 받기 위해 socket.io (nodejs를 사용하는 경우 ur)를 사용할 수 있습니다. (_http : //nkzawa.tumblr.com/post/46850605422/connecting-to-a-socketio-server-from-android_) - firebase 클라우드 메시징을 사용하여이를 수행 할 수도 있습니다 – imixtron

관련 문제