사용자 위치 정보를 캡처하는 장면에서 계속 실행해야하는 서비스 (wakelock 포함)가 있습니다. Service
은 LocationListener
방법 (즉, onLocationChanged()
)을 구현합니다.Android GPS 서비스 문제
그러나 onLocationChanged()
이 전화로 호출되기까지 시간이 걸리므로 내 서비스는 무언가를해야합니다. Thread.sleep()
을 사용하려고 생각했지만 전화가 onLocationChanged()
을 호출하지 못하도록할까요? 아니면 폴링을해야합니까? while (i < 1000,000) {++ i;}?
이러한 아이디어 중 하나를 사용하여 풍부한 GPS 결과를 얻지는 못합니다. 아무도 나에게 이것을 수행하는 방법에 대한 팁을 줄 수 있는지 궁금해.
코드를 업로드 할 수 있습니까? – Lucifer
위치 업데이트를 요청한 후 위치 (특히 첫 번째 위치)에 잠시 시간이 걸리는 것은 정상입니다. 서비스가 다른 작업을 수행해야하는 경우 수행해야하는 작업을 호출하십시오. onLocationChanged를 기다리는 동안 서비스가 차단되지 않습니다. 하지만 나는 100 % 내가 문제의 전체를 이해하고'Thread.sleep()'을 호출해야하는 이유를 알지 못한다. – Jakar
적시에 GPS 기록을해야합니다 (예 : 하루에 1 분마다 한 번, 밤에 5 분마다 한 번). 하지만 나는 무엇을 선택해야할지 모르겠다. Thread.sleep (30k)은 onLocation() 메서드를 차단하거나 배터리를 소모 할 수있는 바쁜 대기를 차단한다고 생각한다. – Exegesis