我有一个应用程序,允许用户构建一个简单的播放列表,该播放列表存储为MPMediaItem
的数组。当应用程序退出或进入后台时,我想将播放列表存储在文件中,并在用户再次打开应用程序时检索它。
我应该只在文件中保存id而不是整个MPMediaItem
对象吗?
另外,由于用户的库可能已经改变了如何将保存的列表与iPod库进行比较,我是否会循环并运行一堆查询?
答案 0 :(得分:0)
将此数组保存到plist文件中,这是保存和读取本地文件的有效方法。 以下是用于创建,保存,从plist读取数据的方法。希望它对你有所帮助。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *doc = [paths objectAtIndex:0]; //path of document folder
NSString *path = [doc stringByAppendingPathComponent:@"nameOfPlist.plist"]; //get the path of your plist in document folder.
NSDictionary* dic = [NSDictionary dictionaryWithObjectsAndKeys:@"123456",@"number", nil]; //save your data into a dictionary or array.
[dic writeToFile:path atomically:YES]; //then write the dic/array into the plist file.
NSDictionary* dic2 = [NSDictionary dictionaryWithContentsOfFile:path]; //read data from plist.
NSLog(@"dic2 is:%@",[dic2 objectForKey:@"number"]);