失效链接处理 |
Android之GPS定位详解 PDF 下蝲
本站整理下蝲Q?/strong>
链接Q?a target="_blank">https://pan.baidu.com/s/1XgbrfmkpxfIP_7Alk69ATQ
提取码:(x)9myg
相关截图Q?/strong>
![]()
主要内容Q?/strong>
一、LocationManager
LocationMangagerQ位|管理器。要x作定位相兌备,必须先定义个LocationManager。我们可以通过如下代码创徏LocationManger对象?/div>
LocationManger locationManager=(LocationManager)this.getSystemService(Context.LOCATION_SERVICE);
二、LocationListener
LocationListenerQ位|监听,监听位置变化Q监听设备开关与状态?/div>
private LocationListener locationListener=new LocationListener() {
/**
* 位置信息变化时触?/div>
*/
public void onLocationChanged(Location location) {
updateView(location);
Log.i(TAG, "旉Q?quot;+location.getTime());
Log.i(TAG, "l度Q?quot;+location.getLongitude());
Log.i(TAG, "U度Q?quot;+location.getLatitude());
Log.i(TAG, "hQ?quot;+location.getAltitude());
}
/**
* GPS状态变化时触发
*/
public void onStatusChanged(String provider, int status, Bundle extras) {
switch (status) {
//GPS状态ؓ(f)可见?/div>
case LocationProvider.AVAILABLE:
Log.i(TAG, "当前GPS状态ؓ(f)可见状?quot;);
break;
//GPS状态ؓ(f)服务区外?/div>
case LocationProvider.OUT_OF_SERVICE:
Log.i(TAG, "当前GPS状态ؓ(f)服务区外状?quot;);
break;
//GPS状态ؓ(f)暂停服务?/div>
case LocationProvider.TEMPORARILY_UNAVAILABLE:
Log.i(TAG, "当前GPS状态ؓ(f)暂停服务状?quot;);
break;
}
}
/**
* GPS开启时触发
*/
public void onProviderEnabled(String provider) {
Location location=lm.getLastKnownLocation(provider);
updateView(location);
}
/**
* GPS用时触?/div>
*/
public void onProviderDisabled(String provider) {
updateView(null);
}
};
三、Location
LocationQ位|信息,通过Location可以获取旉、经U度、v拔等位置信息。上面采用locationListener里面的onLocationChanged()来获取locationQ下面讲q如何主动获取location?/div>
Location location=locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
system.out.println("旉Q?quot;+location.getTime());
system.out.println("l度Q?quot;+location.getLongitude());
注意QLocation location=new Location(LocationManager.GPS_PROVIDER)方式获取的location的各个参数值都是ؓ(f)0?/div>
四、GpsStatus.Listener
GpsStatus.Listener QGPS状态监听,包括GPS启动、停止、第一ơ定位、卫星变化等事g?/div>
//状态监?/div>
GpsStatus.Listener listener = new GpsStatus.Listener() {
public void onGpsStatusChanged(int event) {
switch (event) {
//W一ơ定?/div>
case GpsStatus.GPS_EVENT_FIRST_FIX:
Log.i(TAG, "W一ơ定?quot;);
break;
//卫星状态改?/div>
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
Log.i(TAG, "卫星状态改?quot;);
|