언제나 도움주시는 우리 고수님들께 진심으로 감사 드립니다. ^-^
처음으로 이것저것 뚝딱 거리며 어플을 만들어 보겠다고 용 쓰고 있는데요,
기능 중 현재위치를 가져와서 주소를 뿌려줘야하는 부분이 있는데,
상용화된 다른 어플들 보면 보통 현재위치를 가져오는 부분에서 상태바에 GPS 아이콘이 활성화 되더라구요. ↓ 이렇게요.
그런데 제가 만든 어플에서는 죽었다 깨도 GPS 아이콘은 볼 수가 없어서요. 이게 현재위치를 제대로 가지고 오고는 있는건지 의심이 들게 만드네요. ↓
현재위치 가져오는 소스는 인터넷에 널리 퍼져있는 소스들을 사용했습니다. ↓
locM = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
//GPS환경설정
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE); //정확도
criteria.setAltitudeRequired(false); //고도값 설정
criteria.setBearingRequired(false); //Provider 기본정보
criteria.setCostAllowed(true); //비용
criteria.setPowerRequirement(Criteria.POWER_LOW);//전원소비량
criteria.setSpeedRequired(false); //속도
bestProvider = locM.getBestProvider(new Criteria(), true);
myLocation = locM.getLastKnownLocation(bestProvider);
제가 먼가 빠트리고 가는게 있는걸까요?
고수님들의 조언 부탁드립니다.
네. 맞아요.. Toast로 프로바이더를 확인해보면 늘 네트워크만 찍혀 나오더군요.
BestProvider라고 해서 저는 GPS나 네트워크 중 더 정확한 걸 이용하는 줄로만 알고 있었는데 늘 네트워크만 가져오기에 이상하다 싶었어요.;;
그럼 프로바이더를 베스트 말고 GPS로 설정하면 되는건가요?
p.s 그래서 그런지 모르겠는데, 3g를 사용하지 않고 와이파이만 사용하는 와이프 스마트폰에서는 현재위치를 가져오지 못 하더라구요. 네이버맵이나 구글로컬 같은 어플은 잘도 가져오는데...
이것도 그럼 프로바이더 설정문제로 보면 될까요?




프로바이더를 GPS로 설정해서 위치정보를 업데이트 해야지 상단에 gps 표시나 나옵니다.
네트워크 프로바이더를 통해서 위치 정보를 업데이트 하면 나오지 않습니다.
프로바이더를 선정할 때 Criteria를 사용하셨는데 설정 값을 보니 네트워크 프로바이더만 가져올 것 같네요.
GPS 프로바이더를 사용하지 않기에 아이콘이 상단에 나오지 않는 것 입니다.