首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过在iOS12的应用程序中设置来调用屏幕时间

如何通过在iOS12的应用程序中设置来调用屏幕时间
EN

Stack Overflow用户
提问于 2019-04-28 19:28:43
回答 1查看 72关注 0票数 -2

我想在screentime可以定时停止我的应用时调用screen time setting。

。我的应用程序是设备之间数据传输的一种形式,但可能在某些方面受到限制,例如屏幕时间。怪不得。如果发生这种情况,应用程序必须停止,我们希望告诉用户它停止的原因。基本上,我可以确认屏幕时间是停止应用程序,所以在这种情况下,我希望从我的应用程序打开iOS设置屏幕的屏幕时间,并检查内容。但是,我无法在iOS设置中找到调用Screetime的方法。你有什么好主意吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-28 20:09:30

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

代码语言:javascript
复制
var timer: Timer!

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

代码语言:javascript
复制
timer = Timer.scheduledTimer(timeInterval: 3600, target: self, selector: #selector(runTimedCodeToCloseApp), userInfo: nil, repeats: false)

runTimedCodeToCloseApp选择器意味着计时器将在一小时后调用一个名为runTimedCodeToCloseApp()的方法,因此您需要将该方法名替换为您想要调用的任何名称-并且不要忘记使用@objc标记它。

重要提示:因为你的对象有一个属性来存储计时器,而计时器在对象上调用一个方法,所以你有一个很强的引用循环,这意味着两个对象都不能被释放。要解决此问题,请确保在完成计时器时(调用方法runTimedCodeToCloseApp()时)使计时器无效,例如当视图即将消失时:

代码语言:javascript
复制
timer.invalidate()

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

希望这能对某些人有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55889796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档