Posted this on Apple with no luck, but now that the iOS 6 NDA is up, hoping more eyes will see it here.
I am attempting to modify an app to only allow a user to select
This seems to be an OS problem.
Using picker.showsCloudItems = NO;
correctly shows fewer songs, instead of the whole list... The songs listed there are songs that either were manually downloaded in the Music app or songs that were streamed and therefore cached.
The problem, at least in my case, is dealing with the cached ones.
If I select a song that was manually downloaded the value of MPMediaItemPropertyIsCloudItem
is NO
, which is correct. I can also access the asset's URL through the MPMediaItemPropertyAssetURL
property.
On the other hand, selecting a song that was cached returns YES
on MPMediaItemPropertyIsCloudItem
and nil
on MPMediaItemPropertyAssetURL
, making the song virtually useless to me.
Sorry I don't have an actual answer but I don't have enough reputation to simply comment.
Hope my 2 cents help somehow, but it truly seems to me that this issue can only be resolved by Apple in a future update.