海马玩ios:如何在iOSSwift中玩Vimeo视频

关于海马玩ios的问题,在save vimeo video to iphone中经常遇到, 我创建了一个使用 Vimeo 播放视频的 iOS 应用程序。我想知道在 iOS Swift 中显示 Vimeo 视频的最佳方法是什么。

我创建了一个使用 Vimeo 播放视频的 iOS 应用程序。我想知道在 iOS Swift 中显示 Vimeo 视频的最佳方法是什么。

我已经修复了,当图像被点击时,占位符图像将被隐藏,但视频不会直接播放。除了所有的 Vimeo Intece 元素都是可见的。我知道你应该给 Vimeo 学分,所以不用说,我在视频的底部显示一个 Vimeo 徽标。是否有可能隐藏网络播放器的所有 Vimeo 元素?

来源,我可以找到更多的信息会很好。如果有任何问题,让我知道!提前感谢。

9

您可以使用此 Swift 库HCVimeoVideoExtractor提取 mp4 视频 URL,然后使用 Player 播放它。只需传递 Vimeo 视频链接或视频 ID。

let url = URL(string: "https://vimeo.com/254597739")!
HCVimeoVideoExtractor.fetchVideoURLFrom(url: url, completion: { ( video:HCVimeoVideo?, error:Error?) -> Void in                
    if let err = error {                    
       print("Error = \(err.localizedDescription)")                    
       return
    }
    guard let vid = video else {
        print("Invalid video object")
        return
    }
    print("Title = \(vid.title), url = \(vid.videoURL), thumbnail = \(vid.thumbnailURL)")
    if let videoURL = vid.videoURL[.Quality540p] {
        let player = Player(url: videoURL)
        let playerController = PlayerViewController()
        playerController.player = player
        self.present(playerController, animated: true) {
            player.play()
        }
    }                            
})
8

最好的方法是使用WKWebViewUIWebView

在视图控制器中添加所需大小的WKWebView

从原始 Vimeo 视频中获取视频嵌入代码(单击视频下方的“共享”按钮以查找嵌入代码。)

enter image description here

在弹出的 Vimeo Share 工作表上单击“更多选项”,以配置嵌入视频的外观。

使用以下代码示例嵌入视频:

let webView = WKWebView(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.view.frame.size.height))
self.view.addSubview(webView)
let embedHTML="<html><head><style type=\"text/css\">body {background-color: transparent;color: black;}</style><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=yes\"/></head><body style=\"margin:0\"><div><iframe src=\"//player.vimeo.com/video/139785390?autoplay=1&amp;title=1&amp;byline=1&amp;portrait=0\" width=\"640\" height=\"360\" frameborder=\"0\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe></div></body></html>"
let url = URL(string: "https://")!
webView.loadHTMLString(embedHTML as String, baseURL:url )
webView.contentMode = UIViewContentMode.scaleAspectFit
2

我设法实现这一点的方式是使用KitFoundation

let url: URL! = URL(string: "https://01-lvl3-pdl.vimeocdn.com/01/3355/3/91775232/243724947.mp4?expires=1498547278&token=073f7b03877a8ed3c8029")
let player: Player = Player(url: url)
let controller: PlayerViewController = PlayerViewController()
controller.view.translatesAutoresizingMaskIntoConstraints = false
controller.player = player
// Add `controller` to your view somehow
player.play()

诀窍是,你不能使用它显示网站的链接(在我的情况下https://vimeo.com/91775232)。

我必须检查源并找到视频的实际 URL(即:https://01-lvl3-pdl.vimeocdn.com/01/3355/3/91775232/243724947.mp4?expires=1498547278&token=073f7b03877a8ed3c8029)。

一旦我使用它,一切都很好。

2

对于Swift 4,我在故事板中使用了WKWebView并实现了以下代码:

import WebKit

@ IBOutlet 弱 var webKitView:WKWebView!

在 WebView 中播放视频:

if yourVimeoLink.lowercased().contains("vimeo.com") {
            let url: NSURL = NSURL(string: yourVimeoLink)
            webKitView.contentMode = UIViewContentMode.scaleAspectFit
            webKitView.load(URLRequest(url: url as URL))

}

希望会有所帮助!:)

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(241)
八次函数:八度中多变量函数的极限(limit of multivariable function)
上一篇
Cma在哪里报名:会议在哪里 (thesessions)
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(5条)