iphone - 如何在不检查操作系统版本的情况下检测 iOS 上的 YouTube 应用程序(或缺少该应用程序)?

标签 iphone objective-c ios youtube ios6

在我撰写本文时,最新版本的 iOS (iOS 6) 不再具有专门用于 YouTube 的应用程序。我们的应用程序中嵌入了不再有效的视频链接。这是因为嵌入的视频的 URL 已更改。

我们希望保留 iOS 5 现有的行为,并为 iOS 6(可能更高版本)使用新的 URL 格式。

现在,我们可以嗅探操作系统版本并继续这样做,但 Apple 建议我们不要这样做;相反,我们应该嗅探各种特征。

由于 YouTube 应用程序基于 URL Scheme,我们可以在 UIApplication 上使用 canOpenURL:

是否有用于启动 YouTube 应用程序的已知 URL 方案,它在 iOS 6 上不起作用,但在 iOS 5 上起作用?

这将是最优雅的解决方案。如果不存在,我们将嗅探操作系统版本。

最佳答案

Apple 确实在 their developer documents 中描述了他们(iOS6 之前)应用程序的 URL 方案.由于这不是真正的方案(它是基于 HTTP 的),它不适用于 canOpenURL:,您需要检查操作系统版本。

关于iphone - 如何在不检查操作系统版本的情况下检测 iOS 上的 YouTube 应用程序(或缺少该应用程序)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13051960/

相关文章:

ios - presentOpenInMenuFromRect 的未定义 self.view

ios - 在 iOS 上的 View 之间转换期间闪烁( ionic 框架)

iphone - IOS帮助修改代码片段

ios - OPENCV iOS安装

iphone - 如何使用otool

ios - 非 ARC 项目在使用 dispatch_get_global_queue 时需要 dispatch_release

objective-c - 在 UITableView 上方显示更新状态单元格?

ios - UICollectionView 移动单元格在单击单元格后还原

ios - 如何将 Storyboard UISearchBar 连接到以编程方式创建的 UISearchController?

ios - 如何隐藏SFSafariViewController?