Android에서 GPS(위치 정보 취득)
샘플 코드
우선 설정 파일에서 위치 정보 취득을 허가해 둡니다.
AndroidManifest.xml
<!-- 位置情報 GPSから -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- 位置情報 ネットワークから -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- これは何だろう??? -->
<uses-permission android:name="android.permission.ACCESS_COARSE_UPDATES" />
소스는 이런 느낌입니다.
TestActivity.java
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
public class TestActivity extends Activity {
// GPS用
private LocationManager mLocationManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
// GPS
mLocationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
boolean gpsFlg = mLocationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
Log.d("GPS Enabled", gpsFlg?"OK":"NG");
}
// GPSボタン
public void onBtnGpsClicked(View view) {
mLocationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER, //LocationManager.NETWORK_PROVIDER,
3000, // 通知のための最小時間間隔(ミリ秒)
10, // 通知のための最小距離間隔(メートル)
new LocationListener() {
@Override
public void onLocationChanged(Location location) {
String msg = "Lat=" + location.getLatitude()
+ "\nLng=" + location.getLongitude();
Log.d("GPS", msg);
mLocationManager.removeUpdates(this);
}
@Override
public void onProviderDisabled(String provider) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
}
);
}
}
해설
일단, 여기저기의 사이트를 참고로, 심플한 소스에 정리해 보았습니다.
위치 정보의 취득 개시는
LocationManager.requestLocationUpdates(〜)
위치 정보의 취득 종료는 LocationManager.removeUpdates(LocationListener)
입니다.위치 정보를 얻으려면 GPS뿐만 아니라 네트워크 (WiFi, 3G)도 활용됩니다. 그 점은 iOS와 같습니다만, iOS의 경우는 OS측이 사용할 수 있는 정보를 자동적으로 판단해 위치를 확정하는 것에 대해, Android에서는, GPS 취득인가 네트워크 취득인가를 프로그래머가 구별해 사용하는 사양과 같이 입니다.
또 여러가지 이해하는 대로, 추기해 갑니다.
참고 URL
위치 정보를 얻으려면/GPS를 사용하려면 | 역방향 안드로이드 시작
h tp // w w. 아다코다. 이 m/안 d로이 d/000125. HTML
Android에서 GPS 센서를 사용하는 방법 | TechBooster
h tp : /// ch 보오 s r. 오 rg / 안 d 로이 d / ゔ ぃせ / 227
Android 위치 검색 - 1 (현재 위치 획득)
htp // 코 사과 2. bgs포 t. jp / 2013/05 / ぉ 카치 온마 나게 rm ぉ 카치 온마 나게 r. HTML
【Android】위치 정보 취득에 관한 정리
htp : // bg. 쇼난샤챠. 코 m/2012/06/안 d로이 d. HTML
안드로이드 GPS 정확도를 극적으로 향상시키는 단 하나의 설정 항목
h tp // 모비 ぁ by. 이 m/bぉg-엔 try-3581. HTML
(·o·ゞ 이죠.
Reference
이 문제에 관하여(Android에서 GPS(위치 정보 취득)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yasumodev/items/5f0f030f0ebfcecdff11텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)