我正在询问有关使用谷歌地图为Android应用程序创建地理围栏应用程序的最佳方法的建议。
我已经查看了android文档中给出的示例代码,但我不确定这是否满足我想做的事情。基本上我希望显示用户位置和半径,并在用户超出此半径时发出警报。半径的大小是动态的,可以取决于一天中的时间。
有人能给我一些关于我应该看的好点吗?我知道这是一个普遍的问题,但我正在寻求建议的最佳方法来实现这一点,而不是有人提供代码并给我它。
谢谢
答案 0 :(得分:1)
可以使用GPS获取用户位置,正如您所说,半径是动态的并且取决于时间,因此可以从时间计算出半径。现在您拥有用户位置和半径。现在,您可以计算用户位置与圆形地理围栏中心的距离,然后将其与半径进行比较。
地图上两点之间的距离计算可以使用开发人员网站上提供的“distanceTo”等API来完成。 http://developer.android.com/reference/android/location/Location.html
如果半径大于距离,则用户位于地理围栏内,如果半径小于计算距离,则用户不在动态地理围栏内。
有关实施的更多信息,请访问 http://developer.android.com/training/location/geofencing.html