测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可 | MIT |
发布上次发布 | 2018 年 1 月 |
SwiftSwift 版本 | 4.0 |
SPM支持 SPM | ✗ |
由 Craig Holliday 维护。
依赖 | |
SnapKit | >= 0 |
SwifterSwift | >= 0 |
KTResponsiveUI | >= 0 |
SwiftIcons | >= 0 |
要运行示例项目,请首先克隆仓库,并从 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 文件。