iPhoneアプリでYouTubeを再生する方法
のえる
2015.12.21
この時期、体調を崩しがちなのえるです。
今回はタイトルにある通り、iPhoneでYouTubeを再生する方法を記述してみたいと思います。
よくブログ記事ですと、YouTubeアプリへのURLスキームがほとんどですが、これはアプリ内で再生させる方法です。
1.CocoaPodsで「youtube-ios-player-helper」をインストール
まずはCocoaPodsで「youtube-ios-player-helper」をインストールします。
CocoaPods自体のインストール方法は コチラ をご覧ください。
Podfileには下記の文章を記述します。
1 |
pod "youtube-ios-player-helper", "0.1.4" |
※この記事を作成している時点ではver.0.1.5が公開されていますが、ver.0.1.5では何故かYouTubeの動画が表示されなかったので、ver.0.1.4を指定しています
あとはPodfileを使用してインストールしましょう。
1 |
pod install |
さて、ここまで来たら、ライブラリが使用できるようになりました。
次にプログラムを記述していきます。
1 2 3 4 5 6 |
ViewController.h #import <UIKit/UIKit.h> #import "YTPlayerView.h" @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet YTPlayerView *playerView; @end |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
ViewController.m #import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; [self.playerView setDelegate:self]; [self.playerView loadWithVideoId:@"gdVZhUCSMA8" playerVars:@{ @"autohide": @0, // フルスクリーンボタン表示のon(1)/off(0) // @"fs": @0, // インライン表示のon(1)/off(0) @"playsinline" : @1, // アノテーション表示のon(1)/off(3) @"iv_load_policy": @3, // ループ再生のon(1)/off(0) // ※ループ再生を設定する場合、playlistに動画IDを設定すること // @"loop": @1, // @"playlist": @"gdVZhUCSMA8", // 動画タイトルやアップロードユーザー情報の表示のon(1)/off(0) @"showinfo": @0, // 再生終了後に関連動画を表示するかのon(1)/off(0) @"rel": @0, // IFrame APIのセキュリティ強化 @"origin": @"https://www.youtube.com/" }]; [self.playerView playVideo]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; } #pragma mark - YTPlayerDelegate - (void)playerView:(YTPlayerView *)playerView didChangeToState:(YTPlayerState)state { switch (state) { case kYTPlayerStateUnstarted: NSLog(@"停止中"); case kYTPlayerStatePlaying: NSLog(@"再生中"); case kYTPlayerStatePaused: NSLog(@"一時停止中"); case kYTPlayerStateBuffering: NSLog(@"バッファリング中"); case kYTPlayerStateEnded: NSLog(@"再生終了"); default: break; } } @end |
上記ソース内の「playerView」はStoryboardで「UIView」を配置し、コネクションを貼ったものになります。
これでYoutubeが再生出るようになります。
「loadWithVideoId:playerVars:」の設定引数は コチラ の公式ドキュメントにあるものですが、全てが対応しているみたいではないようです。
いかがでしたか?
アプリ内でYoutubeの使用を検討されている方は、使ってみてはどうでしょうか?
ではではっ!!
POPULAR
-
もきち2020.04.15
-
PHPで日付をフォーマットするならCarbonを使おう
のえる2019.09.13
のえる
Full-stack Developer