안드로이드 개발 질문/답변
(글 수 45,052)

public class MainActivity extends MapActivity {
private MapView mapView;
private MapController mapController;
private LocationManager mlocationManager;
private Location myLocation;
private MyLocationOverlay myLocationOverlay;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mapView = (MapView)findViewById(R.id.mapView);
mapView.setSatellite(true);
mapView.setStreetView(true);
mapView.setTraffic(true);
mapView.setBuiltInZoomControls(true);
myLocationOverlay = new MyLocationOverlay ( this, mapView );
myLocationOverlay.enableMyLocation();
mapController.setZoom(16);
mlocationManager= (LocationManager)getSystemService( Context.LOCATION_SERVICE );
Criteria criteria = new Criteria();
criteria.setAltitudeRequired( false );
criteria.setBearingRequired( false );
criteria.setCostAllowed( true );
criteria.setPowerRequirement( Criteria.POWER_LOW );
criteria.setAccuracy( Criteria.NO_REQUIREMENT );
String provider = mlocationManager.getBestProvider( criteria, true );
myLocation = mlocationManager.getLastKnownLocation( provider );
updateLocation (myLocation);
mlocationManager.requestLocationUpdates( provider, 500, 5, locationListener );
}
private final LocationListener locationListener = new LocationListener()
{
public void onLocationChanged( Location location)
{
myLocation = location;
updateLocation( location );
}
public void onProviderDisabled( String provider )
{
}
public void onProviderEnabled( String provider )
{
}
public void onProviderChanged( String provider, int status, Bundle extras)
{
}
public void onStatusChanged(String provider, int status, Bundle extras) {
}
};
@Override
protected boolean isRouteDisplayed(){
return false;
}
private void updateLocation( Location location )
{
if( location != null )
{
Double geoLatitude = location.getLatitude() * 1E6;
Double geoLongitude = location.getLongitude() * 1E6;
GeoPoint geoPoint =new GeoPoint( geoLatitude.intValue(), geoLongitude.intValue());
mapController.animateTo( geoPoint );
List<Overlay> listOfOverlays = mapView.getOverlays();
listOfOverlays.clear();
mapView.getOverlays().add( myLocationOverlay );
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}안드로이드 한지 얼마 안되서 잘 몰라 질문 드림니다..
java.lang.NullPointerException 대한 것에 해결이 안되서 질문드림니다.




activity_main 레이아웃에 아마도 없는 값을 참조했을경우가 있어요.