我正在尝试在Xcode 9 beta 3上构建"将内容添加到Apple Music",Apple提供的Music Kit示例应用程序。但是我有 4 个这样的错误:三个"'play(('的模棱两可使用"错误和一个"'pause(('的模棱两可的使用"
如果您已经解决了这个问题,请告诉我如何解决此问题。
func beginPlayback(itemCollection: MPMediaItemCollection) {
musicPlayerController.setQueue(with: itemCollection)
//Ambiguous use of 'play()’
musicPlayerController.play()
}
func beginPlayback(itemID: String) {
musicPlayerController.setQueue(with: [itemID])
//Ambiguous use of 'play()’
musicPlayerController.play()
}
// MARK: Playback Control Methods
func togglePlayPause() {
if musicPlayerController.playbackState == .playing {
//Ambiguous use of 'pause()’
musicPlayerController.pause()
} else {
//Ambiguous use of 'play()’
musicPlayerController.play()
}
}
我在Apple的开发论坛中发现了类似的问题:
MPMusicPlayerController Swift4 - 游戏的模棱两可的使用
根据编写修复程序以解决此问题的条目,您需要在MusicPlayerManager中更改此行.swift:
let musicPlayerController = MPMusicPlayerController.systemMusicPlayer
(musicPlayerController
的类型将与此代码MPMusicPlayerController & MPSystemMusicPlayerController
。
自:
let musicPlayerController: MPMusicPlayerController = MPMusicPlayerController.systemMusicPlayer
(musicPlayerController
被明确注释为MPMusicPlayerController
.(
在我看来,这是 Swift 与 SE-0156 类和子类型存在相关的错误,您最好向 Apple 或 swift.org 发送错误报告。