구글맵을 띄울 엑티비티는 Activity를 상속 받는것이 아니라 MapActivity를 상속 받습니다.
그리고 인터페이스를 하나 구현해 줍니다.
public class 클래스명 extends MapActivity implements LocationListener {
...
Location을 구현하기 위해서는 4개의 메소드가 필요하다.
public void onLocationChanged(Location location) {} // 위치값이 변경될 시 , 지역변수는 위치 값을 말한다. public void onProviderDisabled(String provider) {} // 위치 제공이 안될 시 public void onProviderEnabled(String provider) {} // 위치 제공이 가능한 경우 public void onStatusChanged(String provider, int status, Bundle extras) {} // 상태가 변경되었을 시 ( ex. gps->3g ) |
이 내용물들을 잘 골라가며 그때 그때 맞추어 사용하면 된다.
가장 많이 사용하는 것이 onLocationChanged() 일텐데, 이것을 관리하기 위해 LocationManager 을 선언과 생성을 해줍니다.
public class Test_Activity extends MapActivity implements LocationListener { LocationManager locManager; // 선언 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test); locManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); // 생성 // GPS 사용시 //locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,1000, 0, this); // 3G,4G,WIFI 사용시 // locManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000, 0, this); } }
이런식으로 지정해주시면 됩니다.
requestLocationUpdates(GPS,네트워크 방식지정 , 시간(ms) , 거리(m) , 객체리스너) 로 이루어져 있고
이 설정에 따라서 onLocationChanged() 이 작동하기 때문에 이 설정을 잘 이해해주시는게 좋습니다.
'Programming > Android' 카테고리의 다른 글
안드로이드 세팅하기 (Eclipse + SDK ) (0) | 2012.08.29 |
---|---|
구글맵API 1탄 레이아웃에 구글맵 띄우기 (0) | 2012.06.06 |
data공간에 웹에서 파일 다운로드하기. (0) | 2012.06.06 |
YouTube 동영상을 Intent ACTION_VIEW 를 이용하여 재생하기. (0) | 2012.04.22 |
리눅스에서 DDMS에 폰인식이 안될시 조치방법! (0) | 2012.04.12 |