0

在我的应用程序中,用户可以启动一个跟踪服务,该服务使用 LocationManager 每 X 秒请求一次位置。

一位用户报告说,在他的设备 (Galaxy Tab S2) 上,当设备进入睡眠模式时,跟踪会在几分钟后停止。

我有两个问题:

  • 有没有办法让我的设备进入睡眠模式(用于测试)?
  • 使用部分唤醒锁会有什么影响?在我的设备上,cpu 似乎并没有进入睡眠状态,所以我想不会有影响,对吗?还是我需要使用AlarmManager,每x秒手动获取位置(顺便说一句,这应该是LocationManager的一个选项......)?
4

1 回答 1

0

1)有没有办法让我的设备进入睡眠模式(用于测试)?

是的,通过使用 PowerManager。在这里阅读。不要忘记包括以下许可。

android.permission.DEVICE_POWER

这个SO 答案中建议了一种简单的方法,使用设备管理希望可以解决您的问题。

2)我建议你通过这个github 项目来了解如何有效地使用 Partial Wakelock 和 Alarmmanager 来获取位置。这是一个很好的起点,您应该能够获得很多关于如何继续的好提示。

于 2016-08-28T17:10:00.623 回答