使用NSUserDefaults保留MPMediaItemCollection对象

Ada*_*ite 5 iphone objective-c nsuserdefaults mpmediaitemcollection ios

如何使用NSUserDefaults持久保存MPMediaItemCollection对象?MPMediaItemCollection对象是从iPod中选择的单首歌曲.

几个小时我一直在努力奋斗!任何人对NSUserDefaults有任何想法或替代方案,或者从MPMediaItemCollection或其他任何东西转换?!

谢谢...

Ada*_*ite 7

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

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:mediaItemCollection];

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults setObject:data forKey:@"someKey"];
    [defaults synchronize];
Run Code Online (Sandbox Code Playgroud)

从那里,您可以解码并使用您应用中的任何其他地方....

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSData *data = [defaults objectForKey:@"someKey"];
MPMediaItemCollection *mediaItemCollection = [NSKeyedUnarchiver unarchiveObjectWithData:data];
Run Code Online (Sandbox Code Playgroud)