objective-c - 在 iOS 5.0.1 中写入 plists

标签 objective-c ios xcode ios5

我正在使用以下代码写入 plist:

  NSMutableArray *d = [[NSMutableArray alloc] initWithContentsOfFile:
                     [[NSBundle mainBundle] pathForResource:@"FavoritesTaxi" ofType:@"plist"]];
[d addObject:self.dataItem];


// write dictionary to plist
[d writeToFile:[[NSBundle mainBundle] pathForResource:@"FavoritesTaxi" ofType:@"plist"] atomically:YES];
[d release];

我在 4 个不同的设备(2 个模拟器和 2 个真实的 iPhone)上测试了这段代码。 它在以下方面起作用: iPhone 4.3模拟器 iPhone 5.0模拟器 iPhone 4.3 真机

但它不适用于以下内容: iPhone 5.0.1 真机。

我真的不知道为什么这个设备会发生这种情况。任何想法为什么?解决方案是什么?

最佳答案

您不能修改设备上的主包,您没有这样做的权限。所以你不能将 plist 写入主包。我怀疑这在 4.3 设备上是否有效,它可能没有给你一个错误。

您应该将数据保存到文档目录中,这里有大量用于获取文档目录路径的代码示例。

关于objective-c - 在 iOS 5.0.1 中写入 plists,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9351558/

相关文章:

iphone - 如何在 iPhone 上激活/停用 "slide to unlock"?

iphone - 是时候为 Apple 不可知论者学习 Objective-C/Cocoa

objective-c - 我需要删除启用 ARC 的项目中的所有内存管理方法吗?

ios - 模拟器和设备之间的应用程序内存使用差异

swift - 无法分配给属性.... 可访问的 swift 3 中的 setter

ios - swift 中的 Objective C 代码是什么?

ios - Landscape Orientation 默认为左(保持右可用)

ios - 如何在 libComponentLogger 中记录线程名称

ios - 空格取决于宽度 iOS

objective-c - 如何将 iPhone 笔记导入我的应用程序?