あまり一般的な事例ではないですが、Stackoverflowでもはまっている人がいるので備忘に記録しておきます。
NSJSONSerializationクラスで、データをシリアライズすることが出来るのは非常に楽です。しかし私は、CCCryptでデコードしたデータを流してあげると、
2012-****** Error Domain=NSCocoaErrorDomain Code=3840 “The operation couldn’t be completed. (Cocoa error 3840.)” (Garbage at end.) UserInfo=0x6ccdd40 {NSDebugDescription=Garbage at end.}
というエラーが発生して、JSON でシリアライズが出来ませんでした。
こちらを、
NSString* decoded=[request.responseString stringByDecodeFromServer];
decoded=[decoded stringByTrimmingCharactersInSet:[NSCharacterSet controlCharacterSet]];
LOG_S(decoded);
id response =[NSJSONSerialization JSONObjectWithData:[decoded dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingAllowFragments|NSJSONReadingMutableContainers|NSJSONReadingMutableLeaves error:&error];
のように、Trimしてあげると、うまくシリアライズしてあげる様になりました。
このアイディアをいま、実行しているところです。うまく出来るといいですね。
ツイッター使ったアプリプロモの方法思いついた!ツイッターでアプリについて指定のリンクをつぶやいて、そのアカウントでアプリでログインすれば、アプリ内購入プレゼント(先着何人までも、期間も指定できる!) twitter.com/tomohisa/statu…
— Tomohisa Takaokaさん (@tomohisa) 4月 12, 2012
その2:ツイッター使ったアプリプロモの方法思いついた!ツイッターでアプリについて指定のリンクをつぶやいて、そのアカウントでアプリでログインすれば、アプリ内購入プレゼント(先着何人までも、期間も指定できる!) twitter.com/tomohisa/statu…
— Tomohisa Takaokaさん (@tomohisa) 4月 12, 2012