5

IOS アプリケーション開発は初めてです。UIWebview と youtube の埋め込みコードを使用して、アプリに Youtube ビデオを埋め込むためのコードを追加しました。しかし、シミュレーターでアプリケーションを実行すると、webview は単に空白になります。ビデオのサムネイルなどは表示されません。YouTube ビデオは iPhone シミュレーターでは動作しないと聞きましたが、このリンク (" http://www.youtube.com/embed/36db4r3MsgU ") は、ビデオがシミュレーターで完全に再生されることを示しています。親切にこのリンクを調べて、解決策を提案してください。

NSString *code = @"<iframe width=\"640\" height=\"360\" src=\"http://www.youtube.com/embed/36db4r3MsgU?feature=player_detailpage\" frameborder=\"0\" allowfullscreen></iframe>";
[[self video]loadHTMLString:code baseURL:nil];

ありがとう、Abilash.G

4

8 に答える 8

7

@danhの回答は機能しますが、YouTubeのモバイルWebページにYouTubeプレーヤーが埋め込まれているため、多くのスペースが必要になり、見栄えが悪くなります。最適なオプションは、Youtube API ブログの指示に従うことです。

更新: YouTube は API の v3 を使用するようになったため、公式の手順を含む新しいリンクを次に示します: https://developers.google.com/youtube/v3/guides/ios_youtube_helper

于 2013-09-26T01:58:41.510 に答える
4

iOS 8 では動作が異なり、WebView にパディングが追加されました。この質問への回答を投稿しました。これは、iOS 9 および Xcode 7 で美しく動作します。パディング (-8px) は必要に応じて調整する必要があるかもしれませんが、一般的には驚くほどうまく機能します。

必要なのは、YouTube ビデオのコード (YouTube ビデオ URL の最後の文字) を与えることだけです。

こちらの投稿をご覧ください。

コードは次のとおりです。

    CGFloat width = self.webView.frame.size.width;
    CGFloat height = self.webView.frame.size.height;
    NSString *youTubeVideoCode = @"dQw4w9WgXcQ";
    NSString *embedHTML = @"<iframe width=\"%f\" height=\"%f\" src=\"http://www.youtube.com/embed/%@\" frameborder=\"0\" style=\"margin:-8px;padding:0;\" allowfullscreen></iframe>";
    NSString *html = [NSString stringWithFormat:embedHTML, width, height, youTubeVideoCode];
    self.webView.scrollView.bounces = NO;
    [self.webView loadHTMLString:html baseURL:[NSURL URLWithString:@"http://www.youtube.com"]];
于 2016-02-19T18:08:13.510 に答える
2

Google は、iOS アプリに YouTube 動画を埋め込んで制御するためのヘルパーを提供しています。こちらのドキュメントをご覧ください: https://developers.google.com/youtube/v3/guides/ios_youtube_helper

于 2015-03-11T15:18:36.190 に答える
2

私は自分のアプリでこれを使用しました。これはウェブビューを使用しません

https://www.cocoacontrols.com/controls/hcyoutubeparser

また

NSURL *urlOfYouTube = [NSURL URLWithString:@"http://www.youtube.com..."];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:urlOfYouTube];
[self.webView loadRequest:requestObj];
于 2013-07-29T03:47:02.013 に答える
1

// MY UIWebview は、以下の例では「videoYoutube」と名付けられています // UIWebview サイズ = 320x180 // 以下は、ガイドの幅を設定します ... またはそれに近い幅を設定し、デバイスのサイズに応じてスケーリングします。

    let bounds = UIScreen.mainScreen().bounds
    let width = bounds.size.width - 18
    let height = bounds.size.width / 1.8
    let frame = 0

    let youtubeVideolink = "https://www.youtube.com/embed/Rg6GLVUnnpM"

    let Code:NSString = "<iframe width=\(width) height=\(height) src=\(youtubeVideolink) frameborder=\(frame) allowfullscreen></iframe>"

    self.videoYoutube.loadHTMLString(Code as String, baseURL: nil)
于 2016-05-16T15:43:46.720 に答える