有没有办法通过Objective-C中的代码删除iOS 9中出现的“Back to Safari”按钮?

时间:2016-01-21 10:33:42

标签: ios objective-c ios9

我有一个应用程序,允许用户使用Facebook帐户登录,并通过该过程我将它们重定向到Facebook登录页面,iOS 9现在通过safari而不是webview完成。现在,当我的应用程序运行后,我的应用程序的最顶部有一个永久的“返回Safari”按钮,代替了载波/ wifi信号,并在我的一些按钮上。 我能做些什么吗?我一直在网上搜索,似乎找不到任何可以让我把它关掉的东西。

image desc

3 个答案:

答案 0 :(得分:3)

不,没有可用的API允许你这样做。

这是一个iOS 9功能,它是用户期望的。

如果您确实找到了解决方法,例如覆盖状态栏的这一部分,则可能违反了App Store review指南中的10.1,并且可能会拒绝您的应用。

答案 1 :(得分:1)

您应该切换到使用SKSafariViewController。这样用户就永远不会离开你的应用。

当然,如果您想要保持与iOS 8及更早版本的向后兼容性,那么与早期版本相比,您必须拥有iOS 9的单独代码。

在我的应用程序中,使用SKSafariViewController是一件轻而易举的事,而且我从来没有遇到任何问题" Back To Safari"事情。这应该永远不会发生在SKSafariViewController上。如果确实如此,那么你做错了 - 即。不知何故,你迫使用户切换到他们不应该做的实际Safari应用程序。

要获得一个好的教程see this site,或谷歌..苹果有一个非常好的WWDC 15视频。

BTW,我100%肯定这可以用于FaceBook登录,因为我看到一个主要的应用程序以这种方式使用它。

答案 2 :(得分:0)

如果你总是知道背景,你可以用不透明的覆盖物覆盖它。

为此,请创建一个新窗口,并将其级别设置在状态栏上方。

它有点hacky,可能不会删除该区域的交互性(您仍然可以点击按钮)。也很难知道按钮何时消失,你必须取下盖子。

所以,最好不要这样做。