我目前正在swift开发一个应用程序,我想知道是否有办法在用户手机上每隔几天运行一段代码?一个例子是我每5天运行一段代码。我怎样才能每天运行一段代码
回答
无法在您请求的时间间隔内永久性地在后台执行任务。完成后台任务的时间限制为10或15分钟。
你想在背景中做什么特别的事情?对于需要更多执行时间来执行的任务,您必须请求特定权限才能在后台运行它们而不会暂停它们。
你可以阅读更多关于后台执行here。
如果您想在手机处于活动状态时运行某些操作,您可以通过检查AppDelegate中的applicationDidBecomeActive
函数来执行此操作。
在iOS中,您无法控制何时打开应用程序,并且您的应用程序不能随意加载自身以运行代码(除非涉及推送通知)。这就是说,您可以使用AppDelegate
中的一种方法来检查自上次运行代码(您可以将其存储在UserDefaults
中)之后是否已经过去了5天或更长时间,并且如果存在,则运行。
我确信有更有效的方法来做这件事,因为我只是一个初学者,但我不妨尝试提供帮助。你可以创建一个NSTimer,每隔几天触发一次。 NSTimeInterval
将是60(秒)* 60(分钟)* 24(小时)*(您希望的天数)。然后Selector
将是“(不管你的函数的名字是什么)”。最后,无论你希望每隔x天发生什么,你会在NSTimer
中的Selector
函数中放入最有可能会出现在override func viewDidLoad() {}
中的函数,我希望这可以帮助你和未来的观众。
首先:您的答案将受益于格式。第二:24 * 60 * 60是错误的。由于DST日期可能为23,24或25小时。 – vikingosegundo
- 1. 我怎样才能看到每一行?
- 2. WHMCS,我怎样才能运行代码只有一次
- 3. 我怎样才能让我的Python代码的运行速度
- 4. iOS版:我怎样才能在代码
- 5. 我怎样才能使这个代码
- 6. 我怎样才能结合代码
- 7. 我怎样才能JSP或Java代码
- 8. 我怎样才能通过代码
- 9. 我怎样才能得到一个反复运行的Python代码?
- 10. 我怎样才能运行一些代码在角度的所有$ http呼叫
- 11. 我怎样才能将这段代码用于其他活动?
- 12. 我怎样才能实现这段代码?
- 13. 我怎样才能一次咀嚼阵列中的每一行?
- 14. 我怎样才能每天分割舞者错误日志?
- 15. 我怎样才能
- 16. 我怎样才能为每个外键
- 17. 我怎样才能让一个java程序一直运行?
- 18. 我怎样才能编号表的每一行中的SQLite
- 19. 我怎样才能打印每一行读者
- 20. 我怎样才能得到我的表中每一天的字数
- 21. 我怎样才能进一步简化这块LINQ代码
- 22. C#每30天运行一次代码
- 23. 我怎样才能写出一段时间的PHP代码,然后修复它
- 24. 重构我的代码,我怎样才能在一个块中写这些行?
- 25. 我怎样才能让我的代码在文本文件中测试一行?
- 26. 我怎样才能一次运行NHibernate的多个插入?
- 27. 我怎样才能得到每周给定的一天的时间戳?
- 28. 我怎样才能颜色我的代码打印
- 29. 我怎样才能优化我的代码与angularjs
- 30. 我怎样才能防止从我的apk获得源代码
这是什么平台? – sschale
是的,我已经将它添加到现在的问题和迅速 – Tunds
不,像这是一个mac?一部手机?在服务器上开源swift? – sschale