经过一段时间的研究:
主要用三种方式:
1、gps定位:优点:定位准确。缺点:1)耗电,2)首次定位速度慢,3)室内几乎定位不到。
2、基站定位:优点:速度快。 缺点:1)定位不准
3、network,wifi定位。 优点:速度快。缺点:定位不准。
发现百度map和google map非常牛x,可能是几种优化的,定位的速度非常的快。
LocationManager mLocMgr = (LocationManager)getSystemService(LOCATION_SERVICE);
mLocMgr.requestLocationUpdates(LocationManager.GPS_PROVIDER, 60000, 0,listener);
LocationListener listener = new LocationListener() {
//位置改变时的回调方法
@Override
public void onLocationChanged(Location loc) {
if (loc != null) {
//获取经度数据
loc.getLongitude();
//获取纬度数据
loc.getLatitude();
}
}
//GPS被用户禁用的回调方法
@Override
public void onProviderDisabled(String arg0) {
// TODO Auto-generated method stub
}
//GPS被用户开启的回调方法
@Override
public void onProviderEnabled(String arg0) {
// TODO Auto-generated method stub
}
//GPS状态改变的回调方法
@Override
public void onStatusChanged(String arg0, int arg1, Bundle arg2) {
// TODO Auto-generated method stub
}
};