从其他应用程序启动Youtube应用程序在ios 9中不工作

idfiyjo8  于 2023-02-06  发布在  iOS
关注(0)|答案(2)|浏览(100)
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"https://www.youtube.com/watch?v=VideoID"]]) {

        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.youtube.com/watch?v=VideoID"]];
    }

输出:-canOpenURL:URL失败:“youtube:www.youtube.com/watch?v=UFccvtrP1d8“-错误:“此应用程序不允许查询方案youtube”

ttp71kqs

ttp71kqs1#

试试这个
在iOS 9中,您必须将应用希望在Info.plist中LSApplicationQueriesSchemes键(字符串数组)下查询的任何URL方案列入白名单:
将字符串添加为youtube
例如

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

二次检查youtube应用程序是否可用或不在您的设备中
例如

NSString *Name = @"VideoID";

NSURL *linkToApp = [NSURL URLWithString:[NSString stringWithFormat:@"youtube://watch?v=%@",Name]]; // I dont know excatly this one 
NSURL *linkToWeb = [NSURL URLWithString:[NSString stringWithFormat:@"https://www.youtube.com/watch?v=%@",Name]]; // this is correct

if ([[UIApplication sharedApplication] canOpenURL:linkToApp]) {
    // Can open the youtube app URL so launch the youTube app with this URL
    [[UIApplication sharedApplication] openURL:linkToApp];
}
else{
    // Can't open the youtube app URL so launch Safari instead
    [[UIApplication sharedApplication] openURL:linkToWeb];
}

有关播放Youtube视频的更多信息

q35jwt9p

q35jwt9p2#

现在(xCode 14.2),你需要在info.plist上添加“查询的URL方案”,并将“youtube”作为其中一项。

相关问题