基于位置的服务包括三个方面:获取位置、地图服务、地理编码服务。 获取位置有两种方式,一种是通过GPS获得位置,精度高,耗电高,另一种是通过WLAN或通讯基站获得位置,精度低,耗电低。得到的位置信息是三维的,包括经度、纬度、海拔。 地图服务
基于位置的服务包括三个方面:获取位置、地图服务、地理编码服务。
获取位置是所有基于位置的服务的基础,Android获取位置使用LocationManager类。首先获取LocationManager的实例,然后一般要检查位置服务是否开启。如果未开启,就打开设置位置服务界面。如果已开启,再检查应用的定位权限是否允许。都通过了,就可以设置一个位置监听器,有了位置信息就会调用监听器的相应方法。设置监听器时可以设置位置监听的最小时间间隔和最小距离间隔,只有这两个条件都满足时才会有位置信息。流程和关键代码如下图:
下面是一个获取位置的例子。例子的界面如下,最上面一行是两项设置,记录位置的最小时间间隔和最小距离,只有这两个条件同时满足,才会产生一个位置数据。第二行是两个按钮,分别启动和停止位置监听。再下面是一个文本,显示监听到的位置信息。
例子中,首先要在onCreate中获取LocationManager实例,并检查设备是否开启了位置服务,代码如下:
manager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);if(!manager.isProviderEnabled(LocationManager.GPS_PROVIDER) && !manager.isProviderEnabled(LocationManager.netWORK_PROVIDER)) { askLocationSettings();}
可以从手机最上面的功能栏中开启/关闭手机的位置服务,如下图:
来源地址:https://blog.csdn.net/nanoage/article/details/128114107
--结束END--
本文标题: Android定位功能开发(1)——获取位置
本文链接: https://lsjlt.com/news/441869.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-01-21
2023-10-28
2023-10-28
2023-10-27
2023-10-27
2023-10-27
2023-10-27
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0