安卓根据情况获取GPS坐标(GPS或者网络)

 

公司做项目的代码,还费了点时间,做个笔记:

//GPS位置信息
 private LocationManager mLocationManager = null;
 private double latitude=0.0;
 private double longitude =0.0;

/**
  * 初始化GPS获取坐标
  * @author Liusy
  */
 private void initGPSPosition() {
  mLocationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
  //从GPS服务获取坐标
  Location location = mLocationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
  if(location != null){
   latitude = location.getLatitude();
   longitude = location.getLongitude();
  } else {
   // 从网络获取坐标,条件4 * 60 * 1000毫秒、0米
   mLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 4 * 60 * 1000, 10, mLocationListener);
   location = mLocationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
   if (location != null) {
    latitude = location.getLatitude(); // 经度
    longitude = location.getLongitude(); // 纬度
    Log.i(TAG, "获取位置:经度:" + longitude + "-->" + "纬度:" + latitude);
   }
  }
 }

posted @ 2012-06-29 11:55  Liu Siyuan  阅读(957)  评论(0编辑  收藏  举报