我的要求:
路径(路线)周围的区域有一些重要的位置(数量约为50)。当用户在路径上移动并到达最近的地方(例如A)时,我需要执行一些特定于该地点的任务(例如A)。
目前,我正在同时为所有需要的地方创建地理围栏,但对电池消耗有疑问。
有没有办法减少电池消耗?如果是,那么请帮忙。任何帮助或指导都将受到赞赏。
注意:用户可以从路线的开始/结束/中间进入路线。
答案 0 :(得分:1)
这是一个选项:
通过算法运行每个点以确定从点到用户的距离。
例如,假设用户位于X(0),Y(0)运行根(Xn) - X(0)) 2 +(Yn - Y(0)) 2
将距离指定为地理围栏的属性。
为新属性排序一系列地理围栏。
将最接近的10个(或根据路径的距离和地理位置彼此接近的区域似乎合理的数字)添加到新阵列。
注册这10个(或左右)区域。
记录此过程的最后位置,并将其与用户的当前位置进行比较。如果用户行进一定距离而不是再次开始该过程。
特别是对于简单的数学运算符,操作系统比同时搜索50个区域要容易得多。