I am developing an application for Android Wear. It listens coordinates from an accelerometer sensor and finds a pattern.
To do this, when the user clicks a button, the service starts and begins to store coordinates in a List. Usually, the accelerometer sensor logs 4 to 5 coordinates per second.
The problem is sometimes the onSensorChanged() method does not receive data during several seconds causing losses of data and trouble to find a pattern.
Here is a gist of my service: https://gist.github.com/cpalosrejano/8f0e59e47124275136fc3d5d941faa07
Things I've tried:
- I am using android:stopWithTask=false to prevent the service to stop when the activity dies.
- I have also used a WakeLock to prevent the device go to sleep while the services are recording coordinates.
What am I doing wrong? Is there another way to receive callbacks from the accelerometer sensor without causing data loss?
Thanks in advance.