Strange returning points on route when using MixedPositionProvider

jmdiazlr8 years ago

This route image:

Image with returning points

According to image, and data, I returned to the bottom point several times.

I modified the app to save the provider of each location, I see that this returning location is from the network provider. It is strange that gps and network provided locations intermix, including pairs of successive network provided locations as if there were two parallel network location requests. It seems too that locations received from GPS does not stop pending network locations requests... I reviewed the code, it looks good but with not too much knowledge of android, I guess it could be a thread raise condition.

This is the data in this time period in order of fixtime (pipe separated):

id|protocol|deviceid|servertime|devicetime|fixtime|valid|latitude|longitude|altitude|speed|course|address|attributes
13600|osmand|1|2016-11-26 17:27:07|2016-11-26 15:10:07|2016-11-26 15:10:07|true|17.98|-92.91|-126.31|0.94|82.46|115 Agrónomos, Villahermosa, Tab., MX|{"battery":"13.0","prov":"gps","accuracy":"96.0","ip":"192.168.1.2","distance":60.83,"totalDistance":523313.49}
13601|osmand|1|2016-11-26 17:27:07|2016-11-26 15:10:50|2016-11-26 15:10:50|true|17.98|-92.91|0|0|0|103 Calle Astrólogos, Villahermosa, Tab., MX|{"battery":"13.0","prov":"network","accuracy":"31.088","ip":"192.168.1.2","distance":17.48,"totalDistance":523275.46}
13608|osmand|1|2016-11-26 17:27:07|2016-11-26 15:11:16|2016-11-26 15:11:16|true|17.98|-92.91|-49.26|2|259.49|103 Calle Astrólogos, Villahermosa, Tab., MX|{"battery":"13.0","prov":"gps","accuracy":"48.0","ip":"192.168.1.2","distance":115.93,"totalDistance":523485.68}
13604|osmand|1|2016-11-26 17:27:07|2016-11-26 15:11:21|2016-11-26 15:11:21|true|17.98|-92.91|0|0|0|103 Calle Astrólogos, Villahermosa, Tab., MX|{"battery":"13.0","prov":"network","accuracy":"30.0","ip":"192.168.1.2","distance":74.6,"totalDistance":523388.09}
13605|osmand|1|2016-11-26 17:27:07|2016-11-26 15:12:03|2016-11-26 15:12:03|true|17.98|-92.91|0|0|0|216 Agrónomos, Villahermosa, Tab., MX|{"battery":"13.0","prov":"network","accuracy":"37.536","ip":"192.168.1.2","distance":79.15,"totalDistance":523392.64}
13603|osmand|1|2016-11-26 17:27:07|2016-11-26 15:12:28|2016-11-26 15:12:28|true|17.98|-92.91|-9.33|9.15|210||{"battery":"13.0","prov":"gps","accuracy":"32.0","ip":"192.168.1.2","distance":85.42,"totalDistance":523398.91}
13602|osmand|1|2016-11-26 17:27:07|2016-11-26 15:12:53|2016-11-26 15:12:53|true|17.98|-92.91|0|0|0||{"battery":"13.0","prov":"network","accuracy":"142.892","ip":"192.168.1.2","distance":94.29,"totalDistance":523369.75}
13606|osmand|1|2016-11-26 17:27:07|2016-11-26 15:13:25|2016-11-26 15:13:25|true|17.98|-92.91|0|0|0||{"battery":"12.0","prov":"network","accuracy":"30.0","ip":"192.168.1.2","distance":61.77,"totalDistance":523460.68}
13607|osmand|1|2016-11-26 17:27:07|2016-11-26 15:13:35|2016-11-26 15:13:35|true|17.98|-92.91|-4.89|8.7|301.32||{"battery":"12.0","prov":"gps","accuracy":"32.0","ip":"192.168.1.2","distance":251.99,"totalDistance":523650.9}
13610|osmand|1|2016-11-26 17:27:07|2016-11-26 15:14:26|2016-11-26 15:14:26|true|17.98|-92.92|0|0|0||{"battery":"12.0","prov":"network","accuracy":"40.5","ip":"192.168.1.2","distance":265.73,"totalDistance":523916.63}
13609|osmand|1|2016-11-26 17:27:07|2016-11-26 15:14:42|2016-11-26 15:14:42|true|17.98|-92.92|-10.76|3.83|269.25||{"battery":"12.0","prov":"gps","accuracy":"24.0","ip":"192.168.1.2","distance":366.56,"totalDistance":524017.46}
13611|osmand|1|2016-11-26 17:27:07|2016-11-26 15:15:25|2016-11-26 15:15:25|true|17.98|-92.92|0|0|0||{"battery":"12.0","prov":"network","accuracy":"2462.0","ip":"192.168.1.2","distance":272.32,"totalDistance":524289.78}
13613|osmand|1|2016-11-26 17:27:07|2016-11-26 15:15:49|2016-11-26 15:15:49|true|17.98|-92.92|97.11|14.84|329.39||{"battery":"12.0","prov":"gps","accuracy":"64.0","ip":"192.168.1.2","distance":58.05,"totalDistance":524419.27}
13612|osmand|1|2016-11-26 17:27:07|2016-11-26 15:15:55|2016-11-26 15:15:55|true|17.98|-92.92|0|0|0||{"battery":"12.0","prov":"network","accuracy":"34.5","ip":"192.168.1.2","distance":343.76,"totalDistance":524361.22}
13615|osmand|1|2016-11-26 17:27:08|2016-11-26 15:16:55|2016-11-26 15:16:55|true|17.98|-92.92|-157.74|9.87|30.34||{"battery":"12.0","prov":"gps","accuracy":"64.0","ip":"192.168.1.2","distance":81.71,"totalDistance":524756.91}
13614|osmand|1|2016-11-26 17:27:08|2016-11-26 15:17:03|2016-11-26 15:17:03|true|17.98|-92.92|0|0|0||{"battery":"12.0","prov":"network","accuracy":"39.0","ip":"192.168.1.2","distance":313.98,"totalDistance":524675.2}
13616|osmand|1|2016-11-26 17:27:08|2016-11-26 15:17:54|2016-11-26 15:17:54|true|17.98|-92.92|0|0|0||{"battery":"12.0","prov":"network","accuracy":"40.5","ip":"192.168.1.2","distance":141.73,"totalDistance":524816.93}
13617|osmand|1|2016-11-26 17:27:08|2016-11-26 15:18:01|2016-11-26 15:18:01|true|17.98|-92.92|28.33|3.74|330.49||{"battery":"12.0","prov":"gps","accuracy":"32.0","ip":"192.168.1.2","distance":145.28,"totalDistance":524962.21}
13618|osmand|1|2016-11-26 17:27:08|2016-11-26 15:18:53|2016-11-26 15:18:53|true|17.98|-92.92|0|0|0||{"battery":"12.0","prov":"network","accuracy":"2462.0","ip":"192.168.1.2","distance":925.16,"totalDistance":525742.09}
13621|osmand|1|2016-11-26 17:27:08|2016-11-26 15:19:18|2016-11-26 15:19:18|true|17.99|-92.92|-7.86|0.06|112.03||{"battery":"11.0","prov":"gps","accuracy":"24.0","ip":"192.168.1.2","distance":1229.2,"totalDistance":526971.29}
13619|osmand|1|2016-11-26 17:27:08|2016-11-26 15:19:24|2016-11-26 15:19:24|true|17.98|-92.92|0|0|0||{"battery":"11.0","prov":"network","accuracy":"2462.0","ip":"192.168.1.2","distance":925.16,"totalDistance":525742.09}
13620|osmand|1|2016-11-26 17:27:08|2016-11-26 15:19:54|2016-11-26 15:19:54|true|17.98|-92.92|0|0|0||{"battery":"11.0","prov":"network","accuracy":"2462.0","ip":"192.168.1.2","distance":0.0,"totalDistance":525742.09}
Anton Tananaev8 years ago

You should probably check Android logs. Server logs won't help in this case.