首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

Android 技术小结(015)—— 获取当前经纬度以及地名

2012-09-07 
Android 技术总结(015)—— 获取当前经纬度以及地名public class GPSLocation {private LocationManagerProx

Android 技术总结(015)—— 获取当前经纬度以及地名

public class GPSLocation {private LocationManagerProxy mLocationManager;private Context mContext;LocationManager mManager;public GPSLocation(Context context) {this.mContext = context;mLocationManager = LocationManagerProxy.getInstance(context);mManager = (LocationManager) mContext.getSystemService(Context.LOCATION_SERVICE);}public void enableMyLocation(LocationListener listener) {Location location;if (NetworkState.TYPE_WIFI == NetworkState.searchNetworkType(mContext)){location = mManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);}else{location = mManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);}if (location != null){listener.onLocationChanged(location);}else{Criteria cri = new Criteria();cri.setAccuracy(Criteria.ACCURACY_COARSE);cri.setAltitudeRequired(false);cri.setBearingRequired(false);cri.setCostAllowed(false);String bestProvider = mLocationManager.getBestProvider(cri, true);try{mLocationManager.requestLocationUpdates(bestProvider, 2000, 10, listener);}catch (Exception e){listener.onLocationChanged(null);}}}public void disableMyLocation(LocationListener listener) {if (mLocationManager != null){mLocationManager.removeUpdates(listener);mLocationManager.destory();mLocationManager = null;}if (mManager != null){mManager.removeUpdates(listener);}}}


热点排行