在 Mobile Safari 可见的 WKUIWebView 中写入一个 cookie

Writing a cookie inside WKUIWebView visible from Mobile Safari

我正在尝试从我的应用程序中加载网络 Url,我需要设置一个 cookie。目前我正在使用:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:_myURL]];

但是这种方法导致我的应用程序切换到 Mobile Safari,这非常难看,因为用户失去了对我的应用程序的关注。在新的 WKUIWebView 中加载网页(并使用 NSHttpCookieStorage)不是一个选项,因为这些 cookie 显然会被沙盒化。有没有其他方法可以创建从 Mobile Safari 可见的 cookie?

不,你不能。可以访问 Safari cookie 的应用程序将是一个安全问题。

如果您可以控制您正在打开的网站,那么您可以使用 url 中的一次性登录代码作为请求参数。

从 iOS9 开始,您可以使用 SFSafariViewController which does share cookies with Safari mobile. You can use this in conjunction with custom URL schemes or universal links to "communicate" between them