KoalaTeaPlayer 0.2.7

KoalaTeaPlayer 0.2.7

测试已测试
语言语言 SwiftSwift
许可 MIT
发布上次发布2018 年 1 月
SwiftSwift 版本4.0
SPM支持 SPM

Craig Holliday 维护。



 
依赖
SnapKit>= 0
SwifterSwift>= 0
KTResponsiveUI>= 0
SwiftIcons>= 0
 

  • 作者
  • themisterholliday

KoalaTeaPlayer

CI Status
Version
License
Platform

示例

要运行示例项目,请首先克隆仓库,并从 Example 目录运行 pod install

要求

安装

KoalaTeaPlayer 通过 CocoaPods 提供。要安装它
,只需将以下行添加到 Podfile 即可

pod 'KoalaTeaPlayer'

使用

设置 assetPlayer。

let urlString = "http://traffic.libsyn.com/sedaily/PeriscopeData.mp3"
let audioURL = URL(string: urlString)

let artworkURL = URL(string: "https://w3schools.org.cn/w3images/fjords.jpg")

let asset = Asset(assetName: "Test", url: audioURL!, artworkURL: artworkURL)
let assetPlaybackManager = AssetPlayer(asset: asset)
assetPlaybackManager.playerDelegate = self

// If you want remote commands
// Initializer the `RemoteCommandManager`.
remoteCommandManager = RemoteCommandManager(assetPlaybackManager: assetPlaybackManager)

// Always enable playback commands in MPRemoteCommandCenter.
remoteCommandManager.activatePlaybackCommands(true)
remoteCommandManager.toggleChangePlaybackPositionCommand(true)
remoteCommandManager.toggleSkipBackwardCommand(true, interval: 30)
remoteCommandManager.toggleSkipForwardCommand(true, interval: 30)

设置代理方法

extension ViewController: AssetPlayerDelegate {
    func playerIsSetup(_ player: AssetPlayer) {
        // Max values and initial values should be setup
        // Setup duration text
        print(player.durationText)
        // Setup TimeSlider max value
    }
    
    func currentAssetDidChange(_ player: AssetPlayer) {
        // Asset changed
        // @TODO: maybe remove this
        print("asset changed")
    }
    
    func playerPlaybackStateDidChange(_ player: AssetPlayer) {
        // player.state changed
        print("state changed")
        // Handle state changes like enabling and disabling play/pause buttons
    }
    
    func playerCurrentTimeDidChange(_ player: AssetPlayer) {
        // Current time changed, update sliders accordingly
        print("currentTime changed")
    }
    
    func playerPlaybackDidEnd(_ player: AssetPlayer) {
        // Video or audio finished
        // Please clean up your player view
        print("playback did end")
    }
    
    // Buffering Functions
    func playerIsLikelyToKeepUp(_ player: AssetPlayer) {
        // Amount of buffer time is in the green
        print("playback likely to keep")
    }
    
    func playerBufferTimeDidChange(_ player: AssetPlayer) {
        // Update the buffer slider if you have one
        print("buffer time change")
    }
}

作者

themisterholliday, [email protected]

许可

KoalaTeaPlayer 在 MIT 许可证下提供。有关更多信息,请参阅 LICENSE 文件。