リンクを共有するだけの場合は、次のコードを使用します。
FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init];
content.contentURL = [NSURL URLWithString:@"http://developers.facebook.com"];
[FBSDKShareDialog shareFromViewController:self
withContent:content
delegate:nil];
Composer で「Say something about this...」を空白のままにすると、ストーリーがタイムラインに「Name shared a link」として表示されます。
カスタム OG ストーリーの場合は、共有ダイアログを使用します。publish_actions
明示的に許可を得る必要はありません。共有ダイアログがタイムラインに投稿されないように見える場合は、ダイアログのデリゲートを設定し、デリゲート メソッドを使用して原因を調査できます。
-(void)sharer:(id<FBSDKSharing>)sharer didFailWithError:(NSError *)error {
NSLog(@"Error: %@", error);
}
actions
との作成に関してobjects
は、アプリのダッシュボードで行うことができます。
https://developers.facebook.com/apps/<your-facebook-app-id>/open-graph/
Graph API 呼び出しを行うためのアクセス許可が必要な場合は、Facebookでのログインを実装します。ここで、アプリに必要なアクセス許可を要求します。例えば:
FBSDKLoginButton *loginButton = [[FBSDKLoginButton alloc] init];
loginButton.readPermissions = @[@"public_profile", @"user_photos"];
loginButton.publishPermissions = @[@"publish_actions"];
アクセス許可を取得したら、Graph API 呼び出しを行うことができます。