アカウントにステータスを投稿しようとしています。数時間試してみましたが、うまくいきません。
- (void) shareStatusUpdateButtonClicked {
if ([[FBSDKAccessToken currentAccessToken] hasGranted:@"publish_actions"]) {
[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me/feed" parameters: @{ @"message" : @"hello world"}HTTPMethod:@"POST"]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if (!error) {
NSLog(@"POST ID: %@",result);
}
}];
}
else {
FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logInWithPublishPermissions:@[@"publish_actions"] fromViewController:self handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
if (!error) {
NSLog(@"Permission Granted");
NSDictionary *params = @{@"message": @"This is a test message"};
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me/feed" parameters:params HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,id result,NSError *error) {
if(!error){
NSLog(@"RESULT %@",result);
NSLog(@"POSTED !");
}
}];
}
else{
NSLog(@"ERROR PERMISSION NOT GRANTED");
}
}
];
}
}
問題は、アプリを実行すると、ユーザーがif式で「publish_actions」を許可しているかどうかを確認し、失敗してelseブロックが実行されますが、このアプリを既に承認していると表示されます。次に、[OK] をクリックしますが、Facebook のプロフィールにステータスが投稿されません。どこが間違っているのかわかりません。任意のヘルプが表示されます。PS: コードの他の場所で「publish_actions」権限を付与するようユーザーに求めていません。また、Facebookの設定からアプリを削除しようとしましたが、役に立ちませんでした。