有没有办法在Facebook上分享而不显示ios中的共享对话框

时间:2015-03-17 09:02:18

标签: ios xcode6 facebook-share

这是我的代码,但是我的代码无效publish_streem。有没有办法在Facebook上分享而不显示ios中的共享对话框?

ACAccountStore *accountStore = [[ACAccountStore alloc] init];

ACAccountType *facebookAccountType = [accountStore
                                      accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];

//ACAccount *facebookAccount;

// Specify App ID and permissions
NSDictionary *options = @{ACFacebookAppIdKey:@"565048226932112",ACFacebookPermissionsKey:@[@"publish_stream", @"publish_actions"],ACFacebookAudienceKey:ACFacebookAudienceFriends};

[accountStore requestAccessToAccountsWithType:facebookAccountType options:options completion:^(BOOL granted, NSError *error) {
    if (granted) {
        NSArray *accounts = [accountStore accountsWithAccountType:facebookAccountType];

    }
    else{

        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:[NSString stringWithFormat:@"%@",error] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];

        [alert show];
       // NSLog(@"Error :%@",error);
    }
}];

2 个答案:

答案 0 :(得分:1)

使用Facebook Graph API

https://developers.facebook.com/docs/graph-api/reference/v2.2/post

参考: https://developers.facebook.com/docs/ios/share

//注意:预填充与Facebook帖子相关的字段, //除非用户在应用的工作流程中手动生成内容, //可以违反平台政策:https://developers.facebook.com/policy

//汇总对话框参数

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               @"Sharing Tutorial", @"name",
                               @"Build great social apps and get more installs.", @"caption",
                               @"Allow your users to share stories on Facebook from your app using the iOS SDK.", @"description",
                               @"https://developers.facebook.com/docs/ios/share/", @"link",
                               @"http://i.imgur.com/g3Qc1HN.png", @"picture",
                               nil];

// Make the request
[FBRequestConnection startWithGraphPath:@"/me/feed"
                             parameters:params
                             HTTPMethod:@"POST"
                      completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
                        if (!error) {
                          // Link posted successfully to Facebook
                          NSLog(@"result: %@", result);
                        } else {
                          // An error occurred, we need to handle the error
                          // See: https://developers.facebook.com/docs/ios/errors
                          NSLog(@"%@", error.description);
                        }
                      }];

答案 1 :(得分:0)

使用API​​调用

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                           @"Sharing Tutorial", @"name",
                           @"Build great social apps and get more installs.", @"caption",
                           @"Allow your users to share stories on Facebook from your app using the iOS SDK.", @"description",
                           @"https://developers.facebook.com/docs/ios/share/", @"link",
                           @"http://i.imgur.com/g3Qc1HN.png", @"picture",
                           nil];

// Make the request
  [FBRequestConnection startWithGraphPath:@"/me/feed"
                         parameters:params
                         HTTPMethod:@"POST"
                  completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
                    if (!error) {
                      // Link posted successfully to Facebook
                      NSLog(@"result: %@", result);
                    } else {
                      // An error occurred, we need to handle the error
                      // See: https://developers.facebook.com/docs/ios/errors
                      NSLog(@"%@", error.description);
                    }
                  }];

参考: - https://developers.facebook.com/docs/ios/share