将swift 2视频代码转换为swift 3视频代码

Posted

技术标签:

【中文标题】将swift 2视频代码转换为swift 3视频代码【英文标题】:Convert swift 2 video code into swift 3 video code 【发布时间】:2016-10-25 20:42:49 【问题描述】:

下面的代码显示了一个视频。它在 swift 2 中完美运行,但在 swift 3 xcode 中表明 MPMoivePlayerController 代码已被淘汰。我只是希望我的视频能像在 swift 2 中一样显示在 swift 3 中。

import UIKit 
import AVFoundation
import AVKit
import MediaPlayer


class video: UIViewController 

var moviePlayer : MPMoviePlayerController!


   override func viewDidLoad() 
    super.viewDidLoad()


    let path = Bundle.main.path(forResource: "jxdo", ofType:"mp4")
    let url = URL(fileURLWithPath: path!)
    self.moviePlayer = MPMoviePlayerController(contentURL: url)
    if let player = self.moviePlayer 
        player.view.frame = CGRect(x: 67, y: 75, width: self.view.frame.size.width/2, height: self.view.frame.size.height / 5)
        player.view.sizeToFit()
        player.scalingMode = MPMovieScalingMode.aspectFit
        player.isFullscreen = false
        player.controlStyle = MPMovieControlStyle.default
        player.movieSourceType = MPMovieSourceType.file
        player.repeatMode = MPMovieRepeatMode.none

        self.view.addSubview(player.view)

【问题讨论】:

【参考方案1】:

MPMoviePlayerController 已被弃用,应改为使用 AVPlayerViewController。在 Apple 的文档页面上查看更多信息 https://developer.apple.com/reference/mediaplayer/mpmovieplayercontroller

此外,此线程可能有助于开始转换为更新的 api:How to load MPMoviePlayerController contentUrl asynchronous when loading view?

【讨论】:

以上是关于将swift 2视频代码转换为swift 3视频代码的主要内容,如果未能解决你的问题,请参考以下文章

将 json 和 HTTP“post”代码转换为 Swift 3 时出错

Swift 的视频缓冲输出

swift保存视频到沙盒

使用 Swift 从 iOS 中的 PhotoLibrary 中选择视频

swift 3 - 旋转到横向时全屏播放视频

使用 Swift 3 将 iframe 标记(视频)从 html 字符串加载到 Web 视图中