Flutter唤醒锁定包不允许应用程序进入睡眠模式



我正在使用最新版本的Flutter构建一个应用程序。我一直在用真正的iOS设备进行测试,每当我在应用程序中时,我的物理设备都不会因不活动而进入睡眠模式。我已将物理设备上的设置设置为在30秒内休眠。我已尝试使用pub.dev中的此软件包(https://pub.dev/packages/wakelock),但不管怎样,我的应用程序仍然保持打开状态。代码相对简单,例如:

await Wakelock.disable();
print(await Wakelock.enabled);
// returns false (device should allow sleep mode)

我本以为我甚至不需要软件包,默认情况下会允许设备进入睡眠模式。有人遇到过这种情况并进行了修复吗?

我是wakelock包的作者。

由于这类问题通常应该是GitHub问题,而不是StackOverflow问题,我将为此写一个答案,而不是简短的评论:(


设备是否应正常进入睡眠状态

是的,应该。它通常会进入睡眠状态。

我在这里看到两个选项:

  • 或者您的设备上设置不正确,或者运行了其他服务
  • 您在禁用Wakelock.enable后的某个时刻调用它,这会导致您的设备无法进入睡眠状态

如何解决问题

我不能确切地告诉你发生了什么,因为不应该根据你的描述。

你可以做的是:测试一个根本不使用wakelock的应用程序,看看它是否进入睡眠状态。如果是,那么您可以尝试查看调用Wakelock.enable的位置,并对其进行调试,以确保根本没有调用它。


之后,如果您有更多信息,请在GitHub上打开一个问题。请确保在此之前打开另一个应用程序时,您可以让设备进入睡眠状态。

最新更新