如何通过在iOS12上的应用进行设置来调用屏幕时间

时间:2019-04-28 11:28:43

标签: ios

我想在屏幕时间可以按计划停止我的应用时调用屏幕时间设置。

。我的应用是设备之间数据传输的一种形式,但可能会受到某种限制,例如屏幕时间。这就是为什么。如果发生这种情况,该应用程序必须停止,我们想告诉用户为什么停止。基本上,我可以确认屏幕时间是要停止应用程序,因此在这种情况下,我想从我的应用程序中打开iOS设置屏幕的屏幕时间,然后检查内容。但是,我找不到在iOS设置中调用Screetime的方法。你有个好主意吗?

1 个答案:

答案 0 :(得分:0)

如果您只是想在一段时间间隔后停止应用程序,我可以建议使用Timer

var timer: Timer!

然后您可以创建该计时器,并告诉它在1小时(3600秒)后执行,如下所示:

timer = Timer.scheduledTimer(timeInterval: 3600, target: self, selector: #selector(runTimedCodeToCloseApp), userInfo: nil, repeats: false)

runTimedCodeToCloseApp选择器意味着计时器将在一个小时后调用名为runTimedCodeToCloseApp()的方法,因此您需要用您要调用的方法替换该方法名称-别忘了用@objc进行标记。

重要说明:因为您的对象具有存储计时器的属性,并且计时器在该对象上调用方法,所以您具有强大的引用周期,这意味着无法释放任何对象。要解决此问题,请确保在使用完计时器后(在调用方法runTimedCodeToCloseApp()时使计时器无效),例如在视图即将消失时:

timer.invalidate()

如果您想让计时器每隔一小时执行一次方法,请将repeats: false更改为repeats: true

希望对某人有帮助。