traccar / traccar-client-android

Traccar Client for Android
https://www.traccar.org/client
Apache License 2.0
656 stars 723 forks source link

Adding a hybrid accuracy mode in traccar client #470

Open antonymikhael opened 4 weeks ago

antonymikhael commented 4 weeks ago

One of the very few limitations of traccar is that the user has to switch the accuracy themselves , even though it isn't hard , But better automate it , What if traccar has a hybrid accuracy mode that while the user is stationary will use the medium accuracy and that it has it own set of configs like frequency of 900 and distance 200 but if the user moved x meters in x minutes then switch accuracy to high for maybe 5 minutes and set frequency to 20 and distance to 100 for example . This way the default settings on traccar will work much better since the location will update in real time when the user moves and when the user is stationary it will save battery .

tananaev commented 4 weeks ago

This has been discussed before. The problem is that to detect movement you have to have frequent location updates.

antonymikhael commented 4 weeks ago

yes but for hybrid mode if the device moves maybe more than 500 meter between updates then it means the user is most likely moving , there will always be false positives but I thinks for the most part it is going to work specially if location is accurate to < 300 meters maybe , for that to work the hybrid mode will have to set the frequency to be a maximum of 300 seconds maybe . I think this might work ,

hpeter1994 commented 1 week ago

Yeah, i would love it to work like this: If i'm stationary for set X time, then it switches to low power mode and only checks location every Y seconds. If i have moved Z distance between two checks, then it switches back to high power mode and checks constantly. I think this could be a nice compromise for high accuracy users to save on battery. Worse case scenario is that you have not detected movement for Y time. Make X, Y, Z user settable and everyone can tune these for their liking. It could even save a little more battery if we could have an option to force the offline buffering of the app. So for example it can record the movement in the background but only sends it to the server every 5 minutes. Our usecase needs accurate history but we do not need live updates.