2011-06-14 3 views
0

장치가 네트워크 제공 업체에 의해 위치 정보를 얻을 때 경도와 위도를 가져와 geopoint로 변환 할 수 있지만 gps를 사용할 때 오류가 발생합니다. 이 문제를 해결하려면 어떻게해야합니까?GPS로 위도와 경도를 가져 오지 못하지만 Android의 네트워크 제공 업체가 지원합니까?

public void onCreate(Bundle savedInstanceState) { 
... 

mLocationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
mLocation = mLocationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); 
if (mLocation != null) { 

      gp1 = getGeoByLocation(mLocation); 
      gp2 = gp1; 

      refreshMapView(); 

      if(!mLocationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)){ 
       mLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 2000, 
         10, mLocationListener); 
      }else{ 
       mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 
           10, mLocationListener); 
      } 

    private GeoPoint getGeoByLocation(Location location) { 
     GeoPoint gp = null; 
     try { 
      if (location != null) { 
       double geoLatitude = location.getLatitude() * 1E6; 
       double geoLongitude = location.getLongitude() * 1E6; 
       gp = new GeoPoint((int) geoLatitude, (int) geoLongitude); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
     return gp; 
    } 
+0

무엇이 문제입니까? 로그에서 무엇을 볼 수 있습니까? –

+0

gps를 사용할 때 위도와 경도에 대한 문자열을 표시 할 수없고 GPS를 사용할 때 내 위치를 가리키는 이미지 ( –

답변

1

isProviderEnabled 설정 메뉴에서 사용 중지 된 경우 false입니다. GPS가 활성화 된 경우 알림/상태 표시 줄에 아이콘이 표시됩니다.

+0

예 알림/상태 표시 줄에 GPS 아이콘이 표시되지만 위도와 경도에 대한 문자열을 볼 수 없음 GPS를 사용할 때 네트워크 제공 업체를 사용할 때 성공하지만 GPS를 사용할 때 실패합니다. –

+0

얼마나 기다렸습니까?, 야외에 있습니까? (픽스를 얻으려면 10-15 분이 걸릴 것입니다. – Reno

+0

약 몇 분간.지도는 내가 머무르고있는 지역을 확대 할 수 있지만 경도와 위도를 표시 할 수 없습니다. 지금 방에 있습니다. –

1

GPS는 훨씬 느리고 종종 사용할 수 없습니다. 소프트웨어가 개발 된 사무실이나 소프트웨어 개발자의 집/아파트와 같은 건물에 누군가가있는 경우 GPS 수정본을받지 못할 가능성이 큽니다. 우리의 응용 프로그램은 위치에 크게 의존하고 있으며 우리가 얻는 위치 좌표의 대부분은 셀 타워 (cell tower) 또는 wifi 삼각 측량 (wifi triangulation) 중 하나이며 NETWORK_PROVIDER로 표시됩니다.

관련 문제