TouchJson を使用して、facebooks グラフ API から json データを解析しています。メモリリークが発生していますが、その理由はよくわかりません...
リークを見つけるために、他のすべてを削除したので、次のコードが残っています。リークはループごとに 1 つの NSCFString であり、myItem.date への割り当てが原因であることは理解していますが、その理由はわかりません。
最新バージョンの TouchJson を使用しています
NSError *error;
NSDictionary *jsonDictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:data error:&error];
NSArray *jsonArray = [jsonDictionary objectForKey:@"data"];
for (NSDictionary *jsonEntry in jsonArray) {
NSDictionary *fromDictionary = [jsonEntry objectForKey:@"from"];
NSString *userId = [fromDictionary objectForKey:@"id"];
// Continue if it is a post from Atlas
if (userId != nil && [userId isEqualToString:@"10465958627"]){
MyItem *myItem = [[MyItem alloc] init];
// This uncommented causes the leak, why?
myItem.date = [jsonEntry objectForKey:@"created_time"];
[myItem release];
}
}
ご協力ありがとうございました!
編集: MyItem は、そのようなプロパティを持つ単なるオブジェクトであることを忘れていました
@property (nonatomic, copy) NSString *date;