android的位置服务和地图

实现位置服务的技术有GPS和google网络地图,将这些不同的定位技术统称为LBS,
LocationManager 有两种定位,GPS和NETWORK
locationProvider
通过他们可以得到某人的当前位置或者进行位置跟踪,和设定区域提醒功能。
1 示例:获取位置信息
androidmanifest.xml
gps方法
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
NETWORK方式
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
定位用户的位置:
//得到LocationManager对象
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
//设定定位方式为GPS_PROVIDER,得到位置对象Location
Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
double lat = location.getLatitude();
double lng = location.getLongitude();
latLongString = "纬度:" + lat + "\n经度:" + lng;
myLocationText.setText("您当前的位置是:\n" +latLongString);
设定模拟器 显示位置信息。

处理制定定位方式以外还可以使用Criteria让系统选择最符合条件的LOCATIONPROVIDER.
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_LOW);
String provider = locationManager.getBestProvider(criteria, true);
可以同时存在多个,根据相关程度系统自行决定
可以用下个方法返回所有与查询条件想符合的locationProvider
List<String> matchProvider = locationManager.getProvider(criteria, false);

2 跟踪位置变化
设定监听器 locationListener

locationManager.requestLocationUpdates(provider, 2000, 10,
locationListener);
}
private final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
updateWithNewLocation(location);
}
public void onProviderDisabled(String provider){
updateWithNewLocation(null);
}
public void onProviderEnabled(String provider){ }
public void onStatusChanged(String provider, int status,
Bundle extras){ }
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值