我正在开发一个加载可以搜索的plist文件的参考应用程序。
plist文件约为6kb,包含约600个条目。
我一直在使用模拟器,一切正常,但是当我将它加载到设备上时,没有任何数据存在。只是一张空桌子。
我认为该文件可能太大,因为我可以加载一个包含20个条目的plist,并且它可以在设备上正常加载。
如果文件太大,整个应用程序不会崩溃吗?
有人有任何建议吗?
这是我加载plist文件的方式
NSString* myFile = [[NSBundle mainBundle] pathForResource:@"myPlistFile" ofType:@"plist"];
array = [[NSMutableArray alloc] initWithContentsOfFile:myFile];
答案 0 :(得分:3)
听起来对我来说,你的plist甚至没有被复制到设备上,或者你正在使用区分大小写的文件命名。
首先查看该文件是否存在:
NSString *myFilePath = [[NSBundle mainBundle] pathForResource:@"myPlistFile" ofType:@"plist"];
BOOL exists = [[NSFileManager defaultManager] fileExistsAtPath:myFilePath];
检查布尔值(使用调试器或以任一方式记录)。如果该文件存在,那么我怀疑您在尝试访问文件名时使用了错误的案例。与模拟器不同,文件名在iOS设备上区分大小写。例如,假设你的plist被命名为myAwesomeStuff.plist
。如果您尝试在模拟器上访问myawesomestuff.plist
,它可以正常工作。设备上不是这样。确保在文件名上使用正确的大小写。