ios - 链接无法从 iOS 9.0 中的 safari 应用程序打开,但在 iOS 9.3 中有效

标签 ios objective-c swift ios9 ios9.3

我知道这个问题有很多相同时间的标题或不同标题的答案。我正在尝试下面的代码。

UIApplication.sharedApplication().openURL(videoURL) 

这行代码在 iOS 模拟器 8.xx/9.xx 中运行良好,并返回 true。但是当我试图在 iPhone 9.Xx 中运行我的代码时(不幸的是没有 iOS 8.xx 设备)然后这一行

UIApplication.sharedApplication().openURL(videoURL) 

给出的是假的。

我想,因为我的 url 包含 https://所以我尝试将它更改为 http://但仍然没有运气。是否有任何类型的条目需要在某处的 .plist 文件中。我假设但不知道是否这就是应该如何完成的。你们能帮我解决这个问题吗?

问候

最佳答案

我在实际设备 iPhone iOS 9.3.3 上使用了这段代码

let videoURL = "https://www.youtube.com/watch?v=sFY-NDAAgFo"
UIApplication.sharedApplication().openURL(NSURL(string: videoURL)!)

它只是用 youtube 视频打开了 safari

对于 http 我们现在需要在 Info.plist 中添加一个 key ,因为 iOS 9

就在你的最后一个dict 之前,将这些行写在 Info.plist 中,作为源代码查看。

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

enter image description here

或者,您可以添加一个新键并将其作为字典并添加一个 bool 字段,如图所示

关于ios - 链接无法从 iOS 9.0 中的 safari 应用程序打开,但在 iOS 9.3 中有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38628792/

相关文章:

ios - objective-c/ios 跟踪屏幕使用情况

swift - 将 ENUM 哈希和原始值复制到字典中

ios - 调用函数并在展开可选值时意外发现 nil

ios - 我怎样才能制作表情符号或输入任何内容

用于发布到 friend 墙的 iOS 社交框架

ios - 在 UIScrollView 中滚动一个 UIView

iOS 7 TableView 出队不起作用

ios - Swift 中的自定义警报

iphone - 如何捕获在 iOS 调试器中按下的 "Stop"按钮?

objective-c - Objective C 仅后台应用程序 NSAlert 消息位于所有其他窗口之上