问题标签 [sfsafariviewcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3064 浏览

ios - Safari 视图控制器使用错误的状态栏颜色

我的应用程序使用深色导航栏颜色。因此我将状态栏颜色设置为白色(因此它具有很好的对比度)。

带有白色状态栏的红色导航栏

我通过将barStyle设置为黑色(使状态栏变为白色)并将barTint设置为我的深红色来做到这一点。完美运行。

我提出一个SafariViewController这样的:

但是呈现的状态栏SafariViewController仍然是白色的。这是一个问题,因为SVC导航栏具有默认的白色透明 iOS 默认样式。所以状态栏基本是不可见的。

具有白色状态栏颜色的 Safari 视图控制器

我该如何解决?

0 投票
1 回答
3476 浏览

ios - SFSafariViewController - 从网页与父应用程序交互

我正在尝试研究一种将 Web 视图控制器加载到 iOS 应用程序中的方法,以便网页可以将数据传回给父级。

这可能SFSafariViewController吗?是否有某种机制,例如消息后消息,可以让我将数据发送回本机应用程序?

注意:我使用 SFSafariViewController 非常重要,因为我还需要 Web 视图来与 Safari 保存/共享 cookie。

0 投票
4 回答
1013 浏览

ios - 使用最新的 Facebook SDK 无法登录/卡住

我在使用 Facebook SDK( 4.9.1 ) 时遇到问题,如果没有系统帐户,它会在应用浏览器中打开以进行登录。

从系统 Facebook 帐户登录效果很好。我正在使用以下代码

我已正确完成此处定义的所有必需的 info.plist 设置。

问题是当它使用inapp浏览器登录时,实际使用的是通过调试发现的SafariViewController。它经历了所有登录过程,但最后它卡在一个白色的空白屏幕中并且不会关闭,请参见下面的截图

在此处输入图像描述

已经尝试了所有可能的步骤,但无法克服它。但是,当我设置只有上述登录代码和正确设置的新项目时,一切正常。

Fresh Project 和 Original Project 的唯一区别是应用程序中使用的不同框架的数量,如CrashlyticsFabricInstabugGoogle Frameworks等。我是否有任何理由怀疑这些框架会导致问题,我认为没有。所以,可能是什么问题,任何遇到同样问题并可以帮助我的人都将不胜感激。

谢谢你。

0 投票
1 回答
1711 浏览

oauth - 使用 SFSafariViewController 重置 cookie

如何重置/删除 SFSafariViewController 中的 cookie?类文档中似乎没有任何内容。有什么建议可以重置 cookie 吗?

0 投票
1 回答
3223 浏览

ios - safariViewController 调试 - URL 未加载

我正在使用 Swift 2 构建的 iOS 9 应用程序中使用 SFSafariViewController。

我正在尝试打开一个由于某种原因失败的 URL。我尝试过的所有其他 URL 都有效,除了这个:

http://www.ctvnews.ca/sci-tech/33-engineers-to-be-recognized-at-sci-tech-oscars-1.2730223

该 URL 在模拟器中的常规移动 Safari、我的 iPhone、iPad 和任何桌面浏览器中都很好。只是当我尝试在这个应用程序中通过 Swift 访问它时它失败了。

代码如下:

这段代码运行良好,正如我所说,其他 URL 加载也很好。我真正需要的只是一种更详细地调试 safariViewController 遇到的导致它失败的方法。

didLoadSuccessfully == false行似乎并没有提供更多调试选项来了解问题所在。

换句话说,我该如何调试呢?我似乎在 Apple 的文档中找不到任何可以解释在加载错误的情况下要检查的内容。

请帮忙!谢谢。

0 投票
4 回答
8833 浏览

objective-c - 如何更改 SFSafariViewController 工具栏颜色

预期输出:我想将工具栏颜色更改为深黑色。

实际输出:工具栏为浅灰色。

这是代码:

0 投票
1 回答
287 浏览

objective-c - SFSafariViewController 使用全局应用颜色的背景按钮颜色

我的应用程序使用下面的这一行来更改所有按钮以使用这种特定颜色。它还将我的 SFSafariViewController 中的按钮变成了看起来很糟糕的相同颜色。但是我找不到解决此问题的好方法。我这样做的唯一方法是下面的代码,但之后有一个问题。

由于 setBackgroundColor 可以工作,但是一旦我完成浏览器并返回应用程序,我的所有按钮都清晰可见。

这也不起作用。

必须有一种更简单的方法来做到这一点。您可以在 Safari 浏览器中看到应用程序的颜色为橙色,并且在下方看起来不太好。

在此处输入图像描述

0 投票
2 回答
2623 浏览

ios - 如何正确删除 SFSafariViewController 作为子视图控制器?

我正在使用此 SO 答案提供的技术在 SFSafariViewController 中预加载一些 URL,如下所示:

我尝试使用以下代码删除 Safari View 控制器:

现在我可以预加载 URL 并毫无问题地显示 Safari 视图。但是,在我重复该过程(预加载/显示/删除)几次(可能超过 30 次)后,应用程序将由于一些内存问题而崩溃,因为日志显示Memory level is not normal or this app was killed by jetsam应用程序何时崩溃。

在崩溃之前,我看到了一些关于可能泄漏警告的日志:

删除 Safari 视图控制器时我是否正确执行此操作?我错过了什么吗?或者有什么建议可以解决这个问题?

0 投票
4 回答
11035 浏览

ios - 在 iOS 9 中,为什么 SFSafariViewController 被推送而不是模态呈现?

SFSafariViewController通过调用presentViewController:animated:completion:一个UIViewController实例来呈现一个。

结果是它被推动(从右侧滑入),就好像我调用pushViewController:animated:了一个UINavigationController实例一样。我已经验证这一切都发生在主队列上。并且呈现视图控制器本身不是模态的(无论如何这都不重要,但以防万一,我们可以排除这种情况)。

如果我SFSafariViewController用 a替换UIViewController它,它会按预期工作,它会以模态方式呈现。

知道为什么或如何解决这个问题吗?

0 投票
1 回答
504 浏览

ios - 当另一个应用程序打开 Safari 视图控制器时,如何让 branch.io 通用链接工作?

当我通过第三方应用打开分支生成的链接时,它会在 Safari 视图控制器中打开,并且当它已经安装在我的手机上时不会直接打开我的应用。而通过另一个未在 Safari View Controller 中打开链接的应用程序单击该链接会导致按预期直接打开该应用程序。有谁知道如何解决这个问题?