使用NSUserDefaults保留MPMediaItemCollection对象

你如何坚持使用NSUserDefaults MPMediaItemCollection对象? MPMediaItemCollection对象是从iPod中select的单曲。

我一直在挣扎几个小时! 任何人有任何想法或替代NSUserDefaults或从MPMediaItemCollection转换,或任何?

谢谢…

首先将MPMediaItemCollection转换/编码为一个NSData对象,并使用NSUserDefaults存储它:

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:mediaItemCollection]; NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:data forKey:@"someKey"]; [defaults synchronize]; 

从那里,你可以解码和使用你的应用程序的任何其他地方….

 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSData *data = [defaults objectForKey:@"someKey"]; MPMediaItemCollection *mediaItemCollection = [NSKeyedUnarchiver unarchiveObjectWithData:data];