有什么方法可以检查从 iPhone 音乐库中获取的 mediaItem 是否代表 iCloud 项目?
我知道媒体项目的 MPMediaItemPropertyAssetURL 属性对于受 DRM 保护的媒体和 iCloud 项目都是 nil,但我不知道如何确定该项目是受 DRM 保护还是在云上可用。
提前致谢
有什么方法可以检查从 iPhone 音乐库中获取的 mediaItem 是否代表 iCloud 项目?
我知道媒体项目的 MPMediaItemPropertyAssetURL 属性对于受 DRM 保护的媒体和 iCloud 项目都是 nil,但我不知道如何确定该项目是受 DRM 保护还是在云上可用。
提前致谢
从 iOS 6 开始,您可以使用以下属性检查项目是否在 iCloud 中MPMediaItemPropertyIsCloudItem
https://developer.apple.com/documentation/mediaplayer/mpmediaitempropertyisclouditem?language=objc
从 iOS 9.2 开始,您可以检查MPMediaItemPropertyHasProtectedAsset
DRM。https://developer.apple.com/documentation/mediaplayer/mpmediaitempropertyhasprotectedasset?language=objc
我不能绝对肯定地说这是最好的方法,但在我的应用程序中,我只是测试 MPMediaItem 的MPMediaItemPropertyAssetURL
属性,看看它是否为零:
if ([(MPMediaItem*)item valueForProperty:MPMediaItemPropertyAssetURL] == nil) {
// it's in the cloud
}