我正在为企业部署编写iOS应用程序。用例是它要在iPad上的自助服务终端/引导访问模式的前台运行,并且只要操作系统运行它就永远不会关闭(iPad将安装在墙上并插入电源资源)。
我已经将iPad设置为永远不会进入锁定屏幕,并且我已经输入了必要的IdleTimerDisable代码。我设置了Guided Access来运行应用程序,然后关闭它。
一切都像白天的魅力。我可以让iPad整天坐在那里,应用程序在前台,它的行为完全符合预期。但是有一段时间过夜,有些东西导致应用程序关闭,当我早上到达工作时,iPad就坐在主屏幕上。
我在控制台打开的情况下将iPad连接到我的Mac,但检查日志和控制台输出并没有发现任何异常。
我还有异常处理和日志记录代码,但查看这些日志显示也没有抛出异常。
行为是一致的:我可以保持应用程序全天开放而不会出现问题,但到第二天早上它就会关闭。有时我可以在Guided Access运行的情况下重新启动应用程序,有时我会在主屏幕上陷入Guided Access困境,阻止我重新启动应用程序,我必须强制重启iPad。
问题:iOS会在一夜之间执行某种清理会导致应用程序退出,还是会有其他解释?
如果操作系统正在关闭应用程序,我该如何解决?
相关信息:我在Xamarin开发了应用程序。只要应用程序处于打开状态,应用程序就会通过后台线程持续轮询REST API。此外,该应用程序目前使用的iPad并未越狱,但如果我需要解决此问题,我可以越狱。