虚位以待(AD)
虚位以待(AD)
首页 > 软件编程 > Android编程 > Android GPS学习

Android GPS学习
类别:Android编程   作者:码皇   来源:互联网   点击:

因项目中要用到GPS定位,学习了下,便把学习成果记录下来。 在清单文件中添加权限: 用到的几个对象,LocationManager、LocationListener、Location
因项目中要用到GPS定位,学习了下,便把学习成果记录下来。

在清单文件中添加权限:


用到的几个对象,LocationManager、LocationListener、Location.

*LocationManager 位置管理器,想要操作定位相关设备,必须先创建一个一个LocationManager对象。

    LocationManger locationManager=(LocationManager)this.getSystemService(Context.LOCATION_SERVICE);

* LocationListener 位置监听者,监听位置变化,监听设备开关与状态。主要用来获取location, 在内部类实现:
    class myListen implements LocationListener {
    @Override public void onLocationChanged(Location location) {
    //位置发生变化 Log.i(TAG, "onLocationChanged.......");
    if (mHandler != null) {
    Message msg = mHandler.obtainMessage(REFRESH_LOCATION, location);
    msg.sendToTarget();
    }
    }
    @Override public void onProviderDisabled(String provider) {
    // }
    @Override public void onProviderEnabled(String provider) {
    }
    @Override public void onStatusChanged(String provider, int status, Bundle extras) {
    // }
    }




绑定监听:
    myListenGPS = new myListen();
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, CHECK_POSITION_INTERVAL, 0, myListenGPS);


requestLocationUpdates(String provider, long minTime, float minDistance, LocationListener listener)中的4个参数:

String provider:设备提供者,LocationManager.GPS_PROVIDER和LocationManager.NETWORK_PROVIDER
long minTime: 位置信息更新周期,毫秒为单位;

float minDistance:位置变化最小距离:当位置距离变化超过此值时,将更新位置信息

LocationListener listener:监听者



* Location 位置信息,通过Location可以获取时间、经纬度、海拔等位置信息。

    Location location=locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
    //主动获取LocationSimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
    Date date = new Date(location.getTime());
    String message = "时间:" + dateFormat.format(date) + "n" +"经度:" + location.getLongitude() + "n" + "纬度:" + location.getLatitude() + "n";










相关热词搜索: Android GPS学习