Facebook アクティビティで表示したいアクションを実行すると、次のエラー コードが表示されることがあります (特に、以前または最近操作したことがないオブジェクトの場合)。
グラフ ログを開く: エラー: ドメイン = com.facebook.sdk、コード = 5
アクションを繰り返すと、最終的には機能し、Facebook でアクティビティが適切に表示され、次のようなメッセージが返されます。
グラフを開くログ: 投稿されたグラフを開くアクション、id: 10151538299634942
開いているグラフの情報は Web サーバー上のページに埋め込まれており、self.recipe.URLatThisApp はオブジェクトの URL です。これをデバッグしようとしましたが、エラーがどこにあるのかわかりません。ポインタをいただければ幸いです。
注: Web サイトでこれをテストしたところ、Web サイトでのオープン グラフの摩擦のない共有は同じように動作します。そのため、この問題が iOS 固有のものであるとは考えていないか、iOS と Web の両方の実装で同じ間違いを犯しているとは考えていません。
NSMutableDictionary *params = [[NSMutableDictionary alloc] init];
[params setObject:self.recipe.URLatThisApp forKey:@"recipe"];
NSLog(@"OPEN GRAPH SAVE");
[FBRequestConnection startWithGraphPath:@"me/ThisAppns:save" parameters:params HTTPMethod:@"POST" completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
NSString *alertText;
if (!error) {
alertText = [NSString stringWithFormat:
@"Posted Open Graph action, id: %@",
[result objectForKey:@"id"]];
} else {
alertText = [NSString stringWithFormat:
@"error: domain = %@, code = %d",
error.domain, error.code];
}
/*
[[[UIAlertView alloc] initWithTitle:@"Result"
message:alertText
delegate:nil
cancelButtonTitle:@"Thanks!"
otherButtonTitles:nil]
show];
*/
NSLog(@"open graph log: %@", alertText);
}
];
}