package com.Taxi.Driver;
import android.content.Context;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
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 DriverMap extends MapActivity {
/** Called when the activity is first created. */
MapController mapcon;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.map);
// TODO Auto-generated method stub
MapView mapview = (MapView)findViewById(R.id.maps);
mapcon = mapview.getController();
mapview.setSatellite(true);
mapview.setBuiltInZoomControls(true);
mapcon.setZoom(16);
LocationManager loma;
String context = Context.LOCATION_SERVICE;
loma = (LocationManager)getSystemService(context);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_LOW);
String provider = loma.getBestProvider(criteria, true);
Location location = loma.getLastKnownLocation(provider);
UpdateLocation(location);
loma.requestLocationUpdates(provider, 60000, 10, localis);
}
private LocationListener localis = new LocationListener(){
public void onLocationChanged(Location location){
UpdateLocation(location);}
public void onProviderDisabled(String provider){
UpdateLocation(null);}
public void onProviderEnabled(String provider){}
public void onStatusChanged(String provider, int status, Bundle extras){}
};
private void UpdateLocation(Location location){
if (location != null){
Double gLa = location.getLatitude()*1E6;
Double gLo = location.getLongitude()*1E6;
GeoPoint geop = new GeoPoint(gLa.intValue(),gLo.intValue());
mapcon.animateTo(geop);
}
}
@Override
protected boolean isRouteDisplayed(){
return false;}
}
2.1 Google APIs 버젼이고 핸드폰은 옵티머스Z 로 2.1버젼입니다.
이클립스를 사용했으며, 책보며 혼자 공부하며 만든거라 많이 부족합니다.
에러는 없고, 어플에서 실행하면 맵뷰까지는 띄워지는데 위치이동을 알 수 가 없어서
핸드폰으로 실행을 했더니, 위치 이동도 없고 줌이 17레벨을 넘어가면 알수없는 에러로 예상치 못하게 종료되었습니다 라며
어플이 종료됩니다. ㅠㅜ 많은 조언 부탁드리겠습니다 (__)