My app does signal processing on songs in the users iPod library. I can only access songs that have been downloaded to the device. Apple’s music player can stream songs from the cloud. Any idea how I can do that? I would store the song in my containers local cache.
I currently pop up an error message how ever in my experience. It hard for users to figure out how to down load songs. (I am really looking forward to the new music player announced yesterday at WWDC)
if (isCloudItem) {
NSString* title = mediaItem.title;
NSMutableString *userErrorMessage = [NSMutableString stringWithCapacity:100];
[userErrorMessage appendFormat:@"%@ has not been down loaded to this device. ", title];
[userErrorMessage appendString:@"Tap the cloud icon in Apple's Music app on your device."];
//[userErrorMessage appendString:@"You can resolve this problem by playing the song from begining to end using Apple's Music app on your device."];
//[userErrorMessage appendString:@"Tab the cloud icon above to down load. Then tab the bulls eye next to the song you want"];
NSString *sysErrMsg = nil;
sysErrMsg = [NSString stringWithFormat:@"iTunes Match item has not been down loaded to device; \n\n%@",
[mediaItem description]];
[self userErrorMessage:userErrorMessage andSystemErrorMessage:sysErrMsg];
return;
}