我们的 iOS 应用程序从中读取 cookieWKHTTPCookieStore
以调用初始化 Web 服务。如果我们要查找的特定 cookie 不存在于 CookieStore 中,则将在 web 服务中传递空值并返回相关响应。由于这是一个初始化 API,我们在完成处理程序中调用 web 服务,如下所示,并通过添加活动指示器来阻止 UI,直到它给出成功或失败。
WKWebsiteDataStore.default().httpCookieStore.getAllCookies { (cookies) in
callInitializationService(cookies)
}
在我们的测试中,它在从 iOS 11.3 到 12.2 的所有可用测试设备上运行良好。
当前的问题是生产应用程序有一个奇怪的行为,即活动指示器在安装后根本没有消失。我们发现根本原因是WKHTTPCookieStore.getAllCookies
完成处理程序从未被调用,因此它阻塞了 UI。该问题主要在 iOS 11.2.x 操作系统版本中观察到,但不确定它是否也会影响任何其他操作系统版本。即使重新启动应用程序也不能解决问题。
有没有人遇到过这个问题?有什么解决方法/解决方法可以解决这个问题吗?