Android GPS技术之LocationManager

LocationManager 这个类提供了访问系统位置的服务,该服务允许应用程序获得定期更新设备的地理位置

实例化的时候不能直接实例化 通过Context.getSystemService(Context.LOCATION_SERVICE)获取

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


LocationProvider类可以获取与位置提供者相关的信息
Location类是对具体位置信息的抽象表示

使用GPS定位的关键之一就是获取LocationProvider,每一个LocationProvider对象都表示一个抽象的定位系统。无论使用GPS做什么,都需要首先获取合适的LocationProvider对象


获取LocationProvider有三个方法

1.获取android 系统所有可用LocationProvider

 List<String> allProvider=locationManager.getAllProviders();

2.根据名称获取LocationProvider

//  获取passive Location Provider
LocationProvider passiveProvider = locationManager.getProvider(LocationManager.PASSIVE_PROVIDER);
//  获取gps Location Provider
LocationProvider gpsProvider = locationManager.getProvider(LocationManager.GPS_PROVIDER);
//  获取network Location Provider
LocationProvider passiveProvider = locationManager.getProvider(LocationManager.NETWORK_PROVIDER);

3.根据条件(Criteria)获取LocationProvider

 Criteria criteria=new Criteria();
 //设置 LocationProvider 免费
 criteria.setCostAllowed(true);
 //设置 LocationProvider 提供高度信息
 criteria.setAltitudeRequired(true);
 //设置LocationProvider 提供方向信息
 criteria.setBearingRequired(true);
 List<String> bestProvider=locationManager.getProviders(criteria, true);


当然LocationManager还提供很多的方法获得LocationProvider

比如 :getBestProvider(Criteria criteria, boolean enabledOnly)

该方法返回一个最适合的LocationProvider


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值