我有一个应用程序,允许用户构建一个简单的播放列表,该列表存储为 s 数组 MPMediaItem
。当应用程序退出或进入后台时,我想将播放列表存储在一个文件中,并在用户再次打开应用程序时检索它。
我应该只在文件中保存一个 id 而不是整个MPMediaItem
对象吗?
此外,由于用户的库可能已更改,我将如何将保存的列表与 iPod 库进行比较,我是否循环并运行一堆查询?
我有一个应用程序,允许用户构建一个简单的播放列表,该列表存储为 s 数组 MPMediaItem
。当应用程序退出或进入后台时,我想将播放列表存储在一个文件中,并在用户再次打开应用程序时检索它。
我应该只在文件中保存一个 id 而不是整个MPMediaItem
对象吗?
此外,由于用户的库可能已更改,我将如何将保存的列表与 iPod 库进行比较,我是否循环并运行一堆查询?
将此数组保存到 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"]);