我第一次尝试在MPMediaPickerController应用程序中使用iOS。
以下是相关代码:
......
import MediaPlayer
class ViewController: UIViewController,...,MPMediaPickerControllerDelegate {
......
var mediPic_VC:MPMediaPickerController!
......
@objc func fireMediaPicker() {
if mediPic_VC == nil {
mediPic_VC = MPMediaPickerController(mediaTypes: .anyAudio)
//mediPic_VC = MPMediaPickerController(mediaTypes: .music)
mediPic_VC.delegate = self
}
self.present(mediPic_VC, animated: true, completion: nil)
}
......
// MPMediaPickerControllerDelegate protocol implementation.
func mediaPicker(_ mediaPicker: MPMediaPickerController,
didPickMediaItems mediaItemCollection: MPMediaItemCollection) {
print(#function)
}
func mediaPickerDidCancel(_ mediaPicker: MPMediaPickerController) {
print(#function)
}
// End of MPMediaPickerControllerDelegate protocol implementation.
......
}可以看到,我有一个函数(fireMediaPicker)来打开MPMediaPickerController。
但是当我运行它时,应用程序只显示一个白屏幕,调试控制台显示消息:
mediaPickerDidCancel(_:)证明了调用了mediaPickerDidCancel协议的函数MPMediaPickerControllerDelegate。
而不是白色的屏幕,我期待看到一个列表的音频项目可供选择。此外,我不知道为什么叫mediaPickerDidCancel。
我在尝试使用MPMediaPickerController的过程中错过了什么?
发布于 2019-09-18 05:08:46
将这些添加到您的plist中:
<key>NSAppleMusicUsageDescription</key>
<string>your own string</string>https://stackoverflow.com/questions/57985351
复制相似问题