我尝试编写激活器操作来更改当前歌曲评级。我现在我们可以阅读MPMediaItemPropertyRating属性并获得评级。但是我们如何从应用程序中更改它?
以下行更改MPMediaItem
的评级:
[mediaItem setValue:[NSNumber numberWithInteger:rating] forKey:@"rating"];
在iOS 7中工作正常,无法确定早期版本。
@sooper的答案适用于设备上的本地MPMediaItems。但iOS不会将这些同步到iCloud音乐库或Apple Music。
似乎无法更改"星级"评级,因此它们会同步到 iCloud 音乐库。任何setValue:forKey:
尝试只会在本地更改星级。此类更改可能会被任何未来的 iCloud 音乐资料库同步覆盖。
我们可以更改 Apple Music 目录和 iCloud 音乐库的"爱"评级,使用 Apple Music Web API @AMGuru在此处指出的那样。
以下是这些 API 的 Apple 文档:
https://developer.apple.com/documentation/applemusicapi/ratings
根据 iPod Library Access 编程指南,"所有媒体项元数据都是只读的。