未经授权,跳过过滤谓词应用程序

roc*_*240 5 plist mpmusicplayercontroller ios swift3 ios10

在iOS10设备上启动后,我得到以下输出:

[MC]从公共有效用户设置中读取.

[SDKPlayback] MPMusicPlayerController] MPMusicPlayerController:服务器未运行,延迟办理登机手续

[SDKLibrary]未授权,跳过过滤谓词应用程序

该应用程序播放来自用户库的音乐,因此必须请求权限,因此我更新了带有NSAppleMusicUsageDescription所需键字符串的info.plist,但是一旦调用谓词,应用程序就会崩溃.当应用程序停止并且启动屏幕消失时,最终会显示权限窗口.如果我点击允许,后续启动将正常工作.

我的问题是:"服务器未运行"错误与权限窗口没有显示有什么关系吗?如果是这样,我该如何开始呢?

mat*_*att 10

所以,MPMusicPlayerController的工作方式是:

  1. 正如您所知,您必须拥有Info.plist中的密钥.

  2. 在您的代码中,检查授权MPMediaLibrary.authorizationStatus.

  3. 如果您没有授权,请使用授权MPMediaLibrary.requestAuthorization.在获得授权之前,您无法继续.要小心,因为调用是异步的,并且在后台线程上调用完成.

  4. 现在你创建一个MPMediaItemCollection并调用setQueue(with:)然后play.