我正在使用最新版本的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上打开一个问题。请确保在此之前打开另一个应用程序时,您可以让设备进入睡眠状态。