728x90
반응형
질문 : Android에서 프로그래밍 방식으로 현재 GPS 위치를 얻는 방법은 무엇입니까?
프로그래밍 방식으로 GPS를 사용하여 현재 위치를 가져와야합니다. 어떻게 할 수 있습니까?
답변
현재 위치의 GPS 좌표를 얻기 위해 단계별 설명이 포함 된 작은 응용 프로그램을 만들었습니다.
완전한 예제 소스 코드는 Get Current Location 좌표, City name-in Android에 있습니다.
작동 방식보기 :
- 우리가해야 할 일은 매니페스트 파일에이 권한을 추가하는 것입니다.
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
- 그리고 다음과 같이 LocationManager 인스턴스를 만듭니다.
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
- GPS가 활성화되어 있는지 확인하십시오.
- 그런 다음 LocationListener를 구현하고 좌표를 가져옵니다.
LocationListener locationListener = new MyLocationListener(); locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 5000, 10, locationListener);
- 이를위한 샘플 코드는 다음과 같습니다.
/*---------- Listener class to get coordinates ------------- */
private class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location loc) {
editLocation.setText("");
pb.setVisibility(View.INVISIBLE);
Toast.makeText(
getBaseContext(),
"Location changed: Lat: " + loc.getLatitude() + " Lng: "
+ loc.getLongitude(), Toast.LENGTH_SHORT).show();
String longitude = "Longitude: " + loc.getLongitude();
Log.v(TAG, longitude);
String latitude = "Latitude: " + loc.getLatitude();
Log.v(TAG, latitude);
/*------- To get city name from coordinates -------- */
String cityName = null;
Geocoder gcd = new Geocoder(getBaseContext(), Locale.getDefault());
List<Address> addresses;
try {
addresses = gcd.getFromLocation(loc.getLatitude(),
loc.getLongitude(), 1);
if (addresses.size() > 0) {
System.out.println(addresses.get(0).getLocality());
cityName = addresses.get(0).getLocality();
}
}
catch (IOException e) {
e.printStackTrace();
}
String s = longitude + "\n" + latitude + "\n\nMy Current City is: "
+ cityName;
editLocation.setText(s);
}
@Override
public void onProviderDisabled(String provider) {}
@Override
public void onProviderEnabled(String provider) {}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {}
}
출처 : https://stackoverflow.com/questions/1513485/how-do-i-get-the-current-gps-location-programmatically-in-android
728x90
반응형
'프로그래밍 언어 > Android' 카테고리의 다른 글
Android 8: Cleartext HTTP traffic not permitted 오류 (0) | 2021.07.12 |
---|---|
Android Pull-to-Refresh 구현 방법 (0) | 2021.07.07 |
TextView에서 HTML을 표시하는 방법 (0) | 2021.07.05 |
Android : 이름을 사용하여 리소스에서 문자열을 가져 오는 방법 (0) | 2021.07.05 |
Android : Button 또는 ImageButton에서 텍스트와 이미지 결합 (0) | 2021.07.05 |