마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

GPS사용 시 onLocation 에 location값이 오지 않습니다.

0 추천
현재 어플리케이션을 개발하고 있습니다.

 

locationManager.requestLocationUpdates(bestProvider, 0, 0, this);

이와같이 내위치를 요청하고 가끔 기기상의 오류인지

onlocation(Location location)

{

}

으로 아무런 값이 오지 않을 때가 있습니다.

원인을 아시거나 해결방안을 아신다면 답변 부탁드립니다 ㅠ
안드로군 (450 포인트) 님이 2013년 7월 10일 질문

1개의 답변

0 추천
오래전에 gps를 다뤄본 경험으로 몇자 적어보자면..

최근에 보니 gps도 구글서비스에 통합되는 형태로 구글이 추천하는 거 같더군요.

이전엔 직접 gps 센서 라이브러리 호출로 위치 정보를 다루었다면

구글맵이 바뀐것처럼 위치정보도 google play service에서 제공하는 형태로...

문제는 해당 문서에서 제공되는 샘플로 실행해봐도 오류가 난다는 점입니다. ㅡ_ㅡ 해당 라이브러리에 클래스가 없다고 소스상에 뜨더군요. 웃긴건 그 상태로 실단말로 올리면 실행은 또 됩니다. 구글이 오픈한 google play service 라이브러리가 뭔가 짝퉁인듯.. 아니면 또 개인적 실수가 있었는지도 모르겠네요.

 

만약 gps 정보를 다룬다면 google play service를 다루는게 낫지 않을까 생각은됩니다. 구글 api 문서에 Location이 그 형태로 가이드되고 있으니까요...

 

예전과 같은 형태에서 문제는... iOS보다 안드로이드가 처리를 신경써야 할게 좀더 많다는 겁니다.

gps 정보가 기지국 또는 ap 기반, 위성기반 등등 다양한 provider가 있는데

아마 설정에서 위치정보 사용안함(이게 진저까지였나? 위성 위치 정보와 네트워크 기반 위치정보가 분리 설정가능했었습니다. ICS는 다시 바뀐거 같더군요. )을 해버리고 폰을 리셋하면 위치정보가 없는 상황이 있었던것 같습니다.

 

예전에 gps 관련 앱들이 대부분 그런 형태를 제공했었는데 앱실행시 설정정보를 가져와서 사용자에게 확인을 띄워주는 작업이 필요할 것 같네요.

[위치 정보 사용이 꺼져있습니다. 설정을 변경할까요?] -> yes시 설정창 이동...

 

google play service를 이용하는 형태는 위 작업이 필요없어 보이던데 문서를 더 봐야할 수 도 있겠네요.
hunikey (1,220 포인트) 님이 2013년 7월 10일 답변
...