首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何隐藏SFSafariViewController?

如何隐藏SFSafariViewController?
EN

Stack Overflow用户
提问于 2015-10-13 04:47:04
回答 2查看 1.1K关注 0票数 1

SFSafariViewController允许网页访问存储在Safari中的cookie。我想用SFSafariViewController执行一些后台任务来利用cookie。但是,我不希望用户看到SFSafariViewController。

有没有一种方法可以隐藏SFSafariViewController,并允许用户在显示SFSafariViewController时触摸屏幕?

EN

回答 2

Stack Overflow用户

发布于 2015-12-02 16:51:50

代码语言:javascript
复制
Class SFSafariViewControllerClass = NSClassFromString(@"SFSafariViewController");
if (SFSafariViewControllerClass) {
    id safController = [[SFSafariViewControllerClass alloc] initWithURL:[NSURL URLWithString:urlString]];

    UIViewController *windowRootController = [[UIViewController alloc] init];

    self.secondWindow = [[UIWindow alloc] initWithFrame:CGRectZero];
    self.secondWindow.rootViewController = windowRootController;
    [self.secondWindow makeKeyAndVisible];
    [self.secondWindow setAlpha:0];

    [windowRootController presentViewController:safController animated:YES completion:^{
        [self.secondWindow.rootViewController dismissViewControllerAnimated:NO completion:NULL];
    }];
}

您可以使用代码来隐藏SFSafariViewControllerClass

票数 2
EN

Stack Overflow用户

发布于 2016-11-06 19:32:06

如果您计划提交到App Store,请不要这样做。

来自https://developer.apple.com/app-store/review/guidelines/

必须使用

5.1.1 (iv) SafariViewContoller以可视方式向用户显示信息;控制器不能被其他视图或层隐藏或遮挡。此外,在未经用户知情和同意的情况下,应用程序不得使用SafariViewController来跟踪用户。

如果需要访问cookies,请改用WKWebView。参见Getting all cookies from WKWebView。不过,这些cookie不会与Safari共享。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33089919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档