让程序提供位置服务-> 如何获取LocationManager?
通过调用android.app.Activity.getSystemService()函数
String serviceString = Context.LOCATION_SERVICE;LocationManager locationManager =(LocationManager)getSystemService(serviceString);
获取LocationManager后指定其定位办法
String provider = LocationManager.GPS_PROVIDER;Location location = locationManager.getLastKnownLocation(provider);
调用location中的办法
double lat = location.getLatitude();double lng = location.getLongitude();
监督地位变动
//参数阐明://provider:定位办法//2000:残剩地位扭转事件的工夫距离//0:间隔条件//locationListener:回调函数locationManager.requestLocationUpdates(provider, 2000, 0, locationListener);//locationListener的实现private final LocationListener locationListener = new LocationListener(){ @Override public void onLocationChanged(Location location) { getLocationInfo(location); } @Override public void onProviderDisabled(String provider) { getLocationInfo(null); } @Override public void onProviderEnabled(String provider) { getLocationInfo(null); } @Override public void onStatusChanged(String provider, int status, Bundle extras) { }
最初要使GPS定位失效须要在AndroidManifest.xml退出用户许可
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>