YouTubeVideoPlayer 1.2

YouTubeVideoPlayer 1.2

Maintained by Le Tai.



  • By
  • Tai Le

Pod Version Pod Platform Pod License Build Status

YouTubeVideoPlayer

Library for embedding and controlling YouTube videos in your iOS applications!

Requirements

  • iOS 8.0 or later
  • Xcode 10.0 or later

Installation

There is a way to use YouTubeVideoPlayer in your project:

  • Using CocoaPods
  • Manually

Installation with CocoaPods

pod 'YouTubeVideoPlayer', '1.1'

Manually

Manually drag file YouTubeVideoPlayer.swift to your project.

Build Project

At this point your workspace should build without error. If you are having problem, post to the Issue and the community can help you solve it.

How To Use

import YouTubeVideoPlayer

let player: YouTubeVideoPlayer = .shared
player.isHidden = true
UIApplication.shared.keyWindow?.addSubview(player)
player.play(videoId: <#YouTube Video Id#>, sourceView: <#Source View#>)

Handle events:

Delegate

YouTubeVideoPlayerDelegate

player.delegate = self
  • func youTubeVideoPlayer(_ player: YouTubeVideoPlayer, didStop videoId: String) {}
  • func youTubeVideoPlayer(_ player: YouTubeVideoPlayer, willPresent videoId: String) {}
  • func youTubeVideoPlayer(_ player: YouTubeVideoPlayer, didPresent videoId: String) {}
Notifications:
  • YouTubeVideoPlayer.playerDidStop
  • YouTubeVideoPlayer.playerWillPresent
  • YouTubeVideoPlayer.playerDidPresent

Examples:

  • Setup event:
self.notificationCenter.addObserver(self, selector: #selector(playerWillPresent), name: YouTubeVideoPlayer.playerWillPresent, object: nil)
  • Handle event:
@objc func playerWillPresent(_ notification: Notification) {
	guard let videoId = notification.userInfo?[YouTubeVideoPlayer.videoIdKey] as? String else { return }
}
  • Get current YouTube video id:
player.videoId
  • Make player is auto play, default is true
player.isAutoPlay = true
  • Set looping, default is true:
player.isLooped = true
  • Pause when idle, when user moves player to the edge, default is false
player.pauseWhenIdle = false
  • Set player's maximum width, default is 500
player.maxWidth = 500

Author

Communication

  • If you found a bug, open an issue.
  • If you have a feature request, open an issue.
  • If you want to contribute, submit a pull request.

Licenses

All source code is licensed under the MIT License.