총 게시물 934건, 최근 0 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[안드로이드]

실시간 GPS수신

글쓴이 : 코쿤팟 날짜 : 2017-02-06 (월) 10:01 조회 : 1447
글주소 : http://www.androidside.com/B49_best/12665
 
  명품GPS 포가드울트라S
LTE 위치추적기 개인,법인,물류차량관리, 초소형 차량용 GPS, 실시간 위치추적
www.4guard.co.kr
  GPS 추천업체 대신측기
GPS, GPS, 광파기, 레벨, 최신장비, 견적상담환영, 착한가격, A/S철저!
www.geotop.kr/
  GPS전문 제이와이시스템
GPS전문 업체, GPS, GNSS, GIS, 모니터링시스템 전문기업
www.jysystem.kr
신청하기


Android 공기계로 GPS로 좌표를 수신 받으려하는데

WIFI연결 상태에선 기지국을 통해 좌표값을 잘 수신하는데

WIFI 미연결 상태에서 야외에서 GPS만으로 위치정보를 수신을 받으려고 하니

잘 받아지지가 않는데 원래 인터넷 미연결 상태에서 GPS위치정보를 받아오려면 좀 버벅거리고 잘 되지 않나요??



코쿤팟 님의 개발 Q&A FAQ 최신글 [더보기]


질문답변 게시판에서 궁금한 사항을 해결하셨다면, 애써 답변해주신 분께 잘 되었다고 따뜻한 댓글 한마디 남겨주세요.
그리고 답변해주신 분의 글을 '추천' 해주세요.
추천받으신 분에게 1포인트가, 추천하신 분에게도 1포인트가 적립됩니다. ^^

노루골 2017-02-06 (월) 11:18

gps가 내장되어 있으면 wifi 연결상태와 관계없이 위치정보를 잘 받아 옵니다.

관련 소스코드는 구글에서 검색하면 많이 나옵니다.


gps가 내장되어 있지 않은 경우에는 접속 ip로 위치정보를 확인합니다.

댓글주소 추천 0 반대 0
     
     
코쿤팟 2017-02-06 (월) 15:59
[@노루골]

버튼눌러서 GPS받아오는 예제로 진행했었는데 실시간으로 받아오려구

Handler로 5초마다 받아오게 했는데 공기계로 WIFI연결 상태에선 원활하게 잘 받아오는데

WIFI미연결 상태에서는 5초가 지나면 어플이 끊김이 발생하면서 딜레이 시간이 엄청 길어

어플이 멈춘듯이 보이다가 기다리면 받아오는데 좌표도 이상하고
댓글주소 추천 0 반대 0
안사드 2017-02-06 (월) 16:20
실내에서는 GPS 변경이 없기에 1초 1m 변경시 리턴하더라도 못받아오는 경우가 많을 겁니다. 
댓글주소 추천 0 반대 0
     
     
코쿤팟 2017-02-06 (월) 17:21
[@안사드]

아 죄송합니다 게시글에 빼먹었네요...

실내에선 WIFI연결로 진행하고

실외에서 WIFI미연결 상태로 GPS로만 수신하게끔 해서 진행했씁니다.
댓글주소 추천 0 반대 0
정에약한마음 2017-02-06 (월) 17:23
근데 공기계면 데이터가 없는데 gps를 받아올 수 있어요??
댓글주소 추천 0 반대 0
     
     
코쿤팟 2017-02-06 (월) 18:08
[@정에약한마음]

위성으로만 수신하게끔 하면 데이터랑 WIFI없이 위치정보 받아올순 있는데

수신시간이 너무 길고 APP이 버벅거림이 발생합니다...ㅠ

그래서 그게 정상인가 해서 질문드려요
댓글주소 추천 0 반대 0
노루골 2017-02-07 (화) 11:14

참고하세요.


@Override
protected void onCreate(Bundle savedInstanceState) {
...
       // Acquire a reference to the system Location Manager
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);

// GPS 프로바이더 사용가능여부
isGPSEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
Log.d("Main", "isGPSEnabled=" + isGPSEnabled);
if(!isGPSEnabled)
Toast.makeText(getApplicationContext(), "GPS가 켜져 있지 않습니다.", Toast.LENGTH_LONG).show();

LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
double lat = location.getLatitude();
double lng = location.getLongitude();

String strLocation = "경도(latitude): " + lat + ", 위도(longitude): " + lng;
Log.d(TAG, strLocation);
댓글주소 추천 0 반대 0
     
     
코쿤팟 2017-02-08 (수) 15:32
[@노루골]
답변감사합니다!!

근데 답변해주신 내용은 이미 사용중인 코드입니다...

GPS를 받아오는 법을 물어보는게 아니라 공기계로 WIFI미연결 상태에서 PROVIDER를 통해 좌표값을 받아오는 

과정에서 버벅거림이 발생하는게 질문요점이라...

답변 감사드립니다.!!
댓글주소 추천 0 반대 0
OSKiller 2017-02-08 (수) 15:42
버벅거린다는건 UI스레드에서 수십밀리가 아닌 수백밀리 이상의 작업을 하고 있다는 의미이니
시간이 걸리는 작업은 워크 스레드를 만들어서 수행 하시고
화면에 적용 할때만 UI스레드에서 수행 하세요
댓글주소 추천 0 반대 0
     
     
코쿤팟 2017-02-08 (수) 18:14
[@OSKiller]

 그냥 GPS받아서 TextView에 값 넣어주는 과정을 HandlerMessage에 다 넣어버렷는데

WIFI연결시엔 버벅거림없이 잘 되는데...

WIFI풀고 실외에서 위성에서 좌표값 받아오려고 하니 끊김이 발생합니다. 

Handler 문제인가요?? UI쓰레드랑 워크쓰레드 분리해야되나요??ㅠㅠ
댓글주소 추천 0 반대 0
이전글  다음글  목록 글쓰기

 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기