您好我有网页浏览应用,我嵌入了YouTube视频。 现在我安装了iOS6,但它们不再工作了。
有人已经找到了解决方案吗?
mycode的:
- (void)viewDidLoad
{
[scrollvideoView setScrollEnabled:YES];
[scrollvideoView setContentSize:CGSizeMake(320,2300)];
[scrollvideoView setPagingEnabled:NO];
[super viewDidLoad];
// Do any additional setup after loading the view.
//Variabelen
NSInteger x1 = 25;
NSInteger x2 = 123;
NSInteger x3 = 220;
NSInteger sz = 75;
//Label height rij1
NSInteger yt1 = 45;
/* de Videos */
//Eerste rij
NSInteger y1 = 0;
[self embedYouTube:@"http://www.youtube.com/watch?v=MFARZYEGqK8" frame:CGRectMake(x1, y1, sz, sz)];
[self embedYouTube:@"http://www.youtube.com/watch?v=cD7WHGvXqEA" frame:CGRectMake(x2, y1, sz, sz)];
[self embedYouTube:@"http://www.youtube.com/watch?v=8onqmHPBJOo" frame:CGRectMake(x3, y1, sz, sz)];
//Setting de labels
UILabel *videoLabel1 = [[UILabel alloc] initWithFrame:CGRectMake(x1, yt1, sz, sz)];
videoLabel1.text = @"Videoclip daor heb ik schijt an";
[self.scrollvideoView addSubview:videoLabel1];
videoLabel1.backgroundColor = [UIColor clearColor];
videoLabel1.font = [UIFont fontWithName:@"Arial" size: 9.0];
videoLabel1.textColor = [UIColor whiteColor];
UILabel *videoLabel2 = [[UILabel alloc] initWithFrame:CGRectMake(x2, yt1, sz, sz)];
videoLabel2.text = @"Videoclip goeie been verkeerde bed";
[self.scrollvideoView addSubview:videoLabel2];
videoLabel2.backgroundColor = [UIColor clearColor];
videoLabel2.font = [UIFont fontWithName:@"Arial" size: 9.0];
videoLabel2.textColor = [UIColor whiteColor];
UILabel *videoLabel3 = [[UILabel alloc] initWithFrame:CGRectMake(x3, yt1, sz, sz)];
videoLabel3.text = @"Wavin flag (giel beelen)";
[self.scrollvideoView addSubview:videoLabel3];
videoLabel3.backgroundColor = [UIColor clearColor];
videoLabel3.font = [UIFont fontWithName:@"Arial" size: 9.0];
videoLabel3.textColor = [UIColor whiteColor];
//Tweede rij
NSInteger y2 = 100;
[self embedYouTube:@"http://www.youtube.com/watch?v=-cJz3YGRlMI" frame:CGRectMake(x1, y2, sz, sz)];
[self embedYouTube:@"http://www.youtube.com/watch?v=ZdQRcAnPCvk" frame:CGRectMake(x2, y2, sz, sz)];
[self embedYouTube:@"http://www.youtube.com/watch?v=KNcT5O1qk40" frame:CGRectMake(x3, y2, sz, sz)];
}
- (void)embedYouTube:(NSString *)urlString frame:(CGRect)frame {`
/*NSString *embedHTML = @"\
<html><head>\
<style type=\"text/css\">\
body {\
background-color: transparent;\
color: white;\
}\
</style>\
</head><body style=\"margin:0\">\
<embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \
width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body></html>";
NSString *html = [NSString stringWithFormat:embedHTML, urlString, frame.size.width,`frame.size.height];
UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame];
[videoView loadHTMLString:html baseURL:nil];
[self.scrollvideoView addSubview:videoView];
//[videoView release];
}
答案 0 :(得分:11)
我刚刚注意到的一个很好的问题和一个问题,并且找到了解决方案。
我确实在Safari / WebKit部分的iOS 6发行说明中找到了这句话:
从iOS 6开始,嵌入式YouTube网址形式为 http://www.youtube.com/watch?v=oHg5SJYRHA0将不再有效。这些 网址用于在YouTube网站上查看视频,而不是用于嵌入 在网页中。相反,描述了应该使用的格式 在这里:https://developers.google.com/youtube/player_parameters。
回到谷歌开发者网站上看来,应该使用iframe嵌入视频播放器,不应该做太多工作。
希望有所帮助。
答案 1 :(得分:5)
//来自Qiqi帮我在ios6中播放了youtube视频,如下所示,它对我有用
//这是我的youtube网址:http://www.youtube.com/watch?v = s9KU-oOa6pA
// VIDEOID:s9KU-oOa6pA
CGRect frame = CGRectMake(5,55, 310,200);
NSString *embedHTML =[NSString stringWithFormat:@"\
<html><head>\
<style type=\"text/css\">\
body {\
background-color: transparent;\
color: blue;\
}\
</style>\
</head><body style=\"margin:0\">\
<iframe height=\"200\" width=\"310\" src=\"http://www.youtube.com/embed/s9KU-oOa6pA\"></iframe>\
</body></html>"];
UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame];
videoView.backgroundColor = [UIColor clearColor];
[videoView loadHTMLString:embedHTML baseURL:nil];
[self.view addSubview:videoView];
答案 2 :(得分:3)
如果您不需要直接自动播放,那么您可以使用带有播放按钮的iframe
<iframe height="90" width="75" src="http://www.youtube.com/embed/VIDEOID"></iframe>
,当您按下播放按钮时,全屏播放器将接管(至少对于iOS 6中的应用程序而言)
如果使用较旧的Base SDK 5.1(5.0)编译应用程序,任何类型的旧版YouTube嵌入应该仍然可以在iOS 6中使用。例如:
<embed src="http://www.youtube.com/watch?v=VIDEOID" type="application/x-shockwave-flash" widht="64" height="64"></embed>