首页 > 解决方案 > SFSafariviewcontroller - UIApplication sendEvent 不工作

问题描述

我正在实现该应用程序超时功能,如果用户将应用程序保持空闲五分钟,应用程序将自动注销。这个概念我确实使用了UIApplication sendEvent方法。

但是,SFSafariviewcontrollerUIApplication sendEvent用户使用SFSafariviewcontroller. 因此,即使用户使用的应用程序,应用程序也会被注销。

有什么办法可以解决这个问题吗?

标签: iosobjective-cuitouchuiapplicationsfsafariviewcontroller

解决方案


我不相信在 SFSafariViewController 中检测到活动是可能的。

来自文档的参考:https ://developer.apple.com/documentation/safariservices/sfsafariviewcontroller?language=objc

用户的活动和与 SFSafariViewController 的交互对您的应用程序不可见

相反,如果您需要此功能,您可能需要查看 WKWebView:https ://developer.apple.com/library/mac/documentation/WebKit/Reference/WKWebView_Ref

如果您的应用程序允许用户从 Internet 上的任何位置查看网站,请使用 SFSafariViewController 类。如果您的应用程序自定义、交互或控制 Web 内容的显示,请使用 WKWebView 类。

所以我的总体建议是要么使用 WKWebView,要么在显示 SafariViewController 时禁用锁定策略


推荐阅读