0

我正在开发一个 iOS 应用程序,我必须邀请用户 Facebook 朋友加入该应用程序。我正在使用社交框架来做到这一点。我已成功在已登录用户的 FB 墙上发布,但我发布的消息存在问题。消息说“用户通过示例应用程序共享了一个链接。请加入这个很棒的应用程序。”。我想要这样的信息:

“用户 -> 朋友请加入这个很棒的应用程序。”。

我希望它就像我们在朋友 FB 墙上写字时出现的那样。

我添加了传递朋友唯一 FB id 的“to”参数。但它不起作用。

下面是我为此使用的代码:

[accountStore requestAccessToAccountsWithType:facebookAccountType options:dict completion:^(BOOL granted, NSError *error)
{
    if (granted)
    {
       __block ACAccount * facebookAccount;



   NSDictionary *options = @{ ACFacebookAppIdKey: **FBAPPID**, ACFacebookPermissionsKey: permissions, @"ACFacebookAudienceKey": ACFacebookAudienceFriends };

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

        NSURL *postURL = [NSURL URLWithString:@"https://graph.facebook.com/me/feed"];

            NSMutableDictionary *postDict = [NSMutableDictionary dictionaryWithObjectsAndKeys:
**FRIENDID**, @"to",**FRIENDNAME**, @"name",@"Testing of app.", @"caption", @"please join this awesome app.", @"message", nil];

        SLRequest *postToMyWall = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodPOST URL:postURL parameters:postDict];
                         [postToMyWall setAccount:facebookAccount];

                         [postToMyWall performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
                          {
                              if (error) {

                              }

                              else
                              {
                                  NSLog(@"Post successful");
                                  NSString *dataString = [[NSString alloc] initWithData:responseData encoding:NSStringEncodingConversionAllowLossy];
                                  NSLog(@"Response Data: %@", dataString);

                                  [self performSelectorOnMainThread:@selector(postSuccess) withObject:nil waitUntilDone:NO];
                              }
                          }];
                     }
                     else
                     {
                         NSLog(@"rfc");
                     }
                 }];


 }

   else
            {
                [self performSelectorOnMainThread:@selector(showerrorAlert:) withObject:error waitUntilDone:NO];
            }
        }];

请如果有人可以为此提供解决方案。我也可以使用 Facebook 框架,但我需要授权用户并使用 iPhone 设备设置中存储的凭据获取他/她的朋友列表。因此,如果您有替代解决方案,请告诉我。

4

0 回答 0