现在,我正在使用以下方式获取当前播放歌曲的信息:
MPMusicPlayerController *controller = [MPMusicPlayerController iPodMusicPlayer];
但是,这仅适用于实际通过iPod播放器播放的曲目。
我想知道是否有办法从其他接管iPod音乐播放器底座的应用中获取相同类型的信息。 Spotify,Downcast,Instacast等应用
答案 0 :(得分:0)
不完全确定您要查找的内容,但您可以使用AVURLAsset从实际文件中获取元数据。我用它来查找mp3和m4a文件的元数据,但可能还有其他格式。有关详细信息,请参阅文档。
AVURLAsset *asset = [[AVURLAsset alloc] initWithUrl:@"song.mp3" options:nil];
if (asset != nil)
{
NSArray *formatArray = asset.availableMetadataFormats;
if ([formatArray count] > 0)
{
NSArray *array = [asset metadataForFormat:[formatArray objectAtIndex:0];
NSString *artist = @"";
NSString *songTitle = @"";
for (AVMetadataItem *metadata in array)
{
if ([metadata.commonKey isEqualToString:@"artist"])
artist = metadata.stringValue;
else if ([metadata.commonKey isEqualToString:@"title"])
songTitle = metadata.stringValue;
etc, ...
}
}
}
答案 1 :(得分:0)
经过进一步调查后,似乎只能从iPod播放器获取元数据。