현재 단말기는 옵티머스Q를 사용하고 있습니다.

 

원래 안드로이드 2.1 이었으나 2.2 로 업그레이드 해논상태이구요.

 

안드로이드 예제를 실습중인데, 소스는 이렇습니다.

 

import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.Toast;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;

public class KGUCampus extends MapActivity {
 
 LocationListener mLocationListener;
 MapView mapView;
 MapController mc;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        mapView = (MapView)findViewById(R.id.KGUMap);
        mapView.setBuiltInZoomControls(true);
        mapView.setSatellite(true);
       
        LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
        mc = mapView.getController();
       
        mLocationListener = new LocationListener() {
         public void onLocationChanged(Location location) {
          if(location != null)
          {
           Toast.makeText(getBaseContext(),
             "위도는 " + location.getLatitude() + ", " + "경도는 " +
             location.getLongitude() + " 입니다.", Toast.LENGTH_LONG).show();
           
           GeoPoint gp = new GeoPoint((int)(location.getLatitude() * 1000000), (int)(location.getLongitude() * 1000000));
           
           mc.animateTo(gp);
           mc.setZoom(14);
          }
         }

   @Override
   public void onProviderDisabled(String provider) {
   }

   @Override
   public void onProviderEnabled(String provider) {
   }

   @Override
   public void onStatusChanged(String provider, int status,
     Bundle extras) {
   }  
        };
       
        lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2, 3, mLocationListener);
    }
   
    @Override
 protected boolean isRouteDisplayed() {
  return false;
 }
   
    @Override
    public void onDestroy() {
     super.onDestroy();
     LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
     lm.removeUpdates(mLocationListener);
    }

}

 

메니페스트에서 권한도 모두 추가해줬고, 외부라이브러리도 사용하고요.

그리고 빌드타켓을 GoogleAPI 2.2 APILevel 8 로 해논상태입니다.

옵티머스큐로 옴겨서 실행시켜보면, 액티비티는 실행이 되고,

주기적으로 현재 위도와 경도를 표시해주나, 화면맵이 제대로 출력되지 않습니다.

흰색타일만 나오구요. 왜그런거죠?