私はJSON形式に慣れていませんが、私が試みているものには理想的に見えます。カスタムNSObject
(レシピ)を取得して、メールのURL文字列で送信する必要があります。次に、受信者は私のアプリでリンクを開き、URLが解析されます。
私の既存の実装は、レシピの詳細から手動で文字列を作成し、もう一方の端でそれをデコードします。JSONなどのより標準的なものを使用したいと思います。
Recipe
これまでのところ、クラスに次のメソッドを追加しました。
- (NSData *)jsonRepresentation
{
NSDictionary *dictionary = @{@"name":self.name,
@"instructions":self.instructions};
NSError* error;
return [NSJSONSerialization dataWithJSONObject:dictionary
options:NSJSONWritingPrettyPrinted
error:&error];
}
NSData
次を使用して、このオブジェクトを正常にログに記録できます。
[[NSString alloc]initWithData:recipe.jsonRepresentation
encoding:NSUTF8StringEncoding];
ただし、材料のリスト(an NSArray
)をまだ追加できません。私は単にこれを使おうとしました:
NSDictionary *dictionary = @{ @"name" : self.name,
@"instructions" : self.instructions,
@"ingredients" : self.orderedIngredients };
しかし、ロギング時に、次のエラーが発生します。
Invalid type in JSON write (Ingredient)
お分かりのように、私はこれでかなり新しいです。
ingredients
辞書に追加する前に、配列に何かをするつもりですか?