A self-moving device comprising a moving module, a task execution module, a control module, a satellite navigation apparatus, and at least one location sensor electrically connected to the control module and configured to detect features related to the location of the self-moving device, wherein: the control module is electrically connected to the moving module and the task execution module, and is configured to control the moving module to actuate the self-moving device to move, and to control the task execution module to execute a working task; and the satellite navigation apparatus is electrically connected to the control module and configured to receive a satellite signal and output current location information of the self-moving device; the control module is configured to determine whether quality of location information output by the satellite navigation apparatus at a current location satisfies a preset condition and to control, if the quality does not satisfy the preset condition, the moving module to actuate the self-moving device to change a moving manner, to enable quality of location information output by the satellite navigation apparatus at a location after the movement to satisfy the preset condition; characterized in that the self-moving device comprises a storage unit, electrically connected to the control module and the satellite navigation apparatus, to store information of an expected location at which the quality of location information output by the satellite navigation apparatus satisfies the preset condition; and the control module is further configured to: if the quality does not satisfy the preset condition, determine the current location of the self-moving device at least partially based on output of the location sensor and control the moving module to actuate the self-moving device to move toward the expected location, wherein the control module is configured to change the moving manner by controlling the moving module to actuate the self-moving device to move toward the expected location. the control module is electrically connected to the moving module and the task execution module, and is configured to control the moving module to actuate the self-moving device to move, and to control the task execution module to execute a working task; and the satellite navigation apparatus is electrically connected to the control module and configured to receive a satellite signal and output current location information of the self-moving device; the control module is configured to determine whether quality of location information output by the satellite navigation apparatus at a current location satisfies a preset condition and to control, if the quality does not satisfy the preset condition, the moving module to actuate the self-moving device to change a moving manner, to enable quality of location information output by the satellite navigation apparatus at a location after the movement to satisfy the preset condition; characterized in that the self-moving device comprises a storage unit, electrically connected to the control module and the satellite navigation apparatus, to store information of an expected location at which the quality of location information output by the satellite navigation apparatus satisfies the preset condition; and the control module is further configured to: if the quality does not satisfy the preset condition, determine the current location of the self-moving device at least partially based on output of the location sensor and control the moving module to actuate the self-moving device to move toward the expected location, wherein the control module is configured to change the moving manner by controlling the moving module to actuate the self-moving device to move toward the expected location. if the quality does not satisfy the preset condition, determine the current location of the self-moving device at least partially based on output of the location sensor and control the moving module to actuate the self-moving device to move toward the expected location, wherein the control module is configured to change the moving manner by controlling the moving module to actuate the self-moving device to move toward the expected location.