YouTube网址计划tvOS

时间:2015-12-26 16:13:51

标签: objective-c youtube url-scheme tvos

我正试图通过我的应用程序使用URL方案打开YouTube应用程序,或者直接在iOS设备上打开YouTube应用程序的YouTube.com域。

这是我尝试过的代码:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"youtube://results?search_query=trailer+%@",movieTitle]]];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://www.youtube.com/results?search_query=trailer+%@",movieTitle]]];

但似乎没有任何效果。关于如何检索YouTube的tvOS应用程序的URL方案的任何想法?

3 个答案:

答案 0 :(得分:0)

在Apple TV上,您可以使用以下URL方案在YouTube应用中播放YouTube视频:

youtube://watch/video_id

代码示例:

func playVideoInYouTube(_ identifier: String) {

    if let url = URL(string: "youtube://watch/" + identifier),
        UIApplication.shared.canOpenURL(url) {

        UIApplication.shared.open(url, options: [:], completionHandler: nil)
    }
    else {
        // Inform the user about missing YouTube app
    }
}

要使用canOpenURL方法,您必须将方案添加到键LSApplicationQueriesSchemes下的 Info.plist 文件中,作为schemes数组的一部分。在XML中看起来像这样:

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>youtube</string>
</array>

答案 1 :(得分:-1)

不一定认为这是一个“正确”的答案,但我认为至少iOS上的所有YouTube链接都由http处理,而不是youtube://

来源(看起来是2015年6月):

https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/YouTubeLinks/YouTubeLinks.html

答案 2 :(得分:-1)

我在youtube应用中播放youtube视频时也遇到了一些问题,但我找到了解决方法,我使用XCDYouTubeKit库直接在我的应用中播放YouTube视频。它非常易于使用,并且到目前为止工作正常。

XCDYouTubeKit:https://github.com/0xced/XCDYouTubeKit