これはメインバンドルへのリンクではありません。それはresourcesフォルダーへのパスで、そのフォルダー内のplistです。アプリをコンパイルするときに、メインバンドル内
したがって、関数名pathForResource...
すべてが暗号で署名されています。しかし、リソースフォルダはありません。自由に書き込むことができます。
@jrturton
// we need to get the plist data...
NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"Symptoms" ofType:@"plist"];
NSMutableArray *dataArray = [[NSMutableArray alloc] initWithContentsOfFile:plistPath];
// add a new entry
NSDictionary *addQuestion = [[NSDictionary alloc] initWithObjectsAndKeys:@"Blank.png",@"Icon",
[NSString stringWithFormat:@"%i",r],@"ID",
[titleTextField text],@"Title",
[questionTextField text],@"Text",
qnType,@"Type",
@"1",@"Custom",
[NSArray arrayWithObjects:@"Yes",@"No",nil],@"Values",
[unitsTextField text],@"Units",
nil];
[dataArray addObject:addQuestion];
[addQuestion release];
// rewrite the plist
[dataArray writeToFile:plistPath atomically:YES];
OSXのドキュメントをiOSのドキュメントで見つけるのは時々起こりますが、今度は私を驚かせました。@OMZがシミュレータで言うように、うまくいくので、ひどいエラーになります!開発者は誤ってこのメソッドをそのアプリケーションで使用すると思うかもしれません... – MatterGoal
デバイス上のテストがとても重要なもう一つの理由! – jrturton