1

我的 iOS 应用程序允许人们使用 Facebook 登录,并自动检查您的哪些朋友当前已注册为使用该应用程序。您当前未使用该应用程序的所有朋友都在“邀请”列表中,这与 DrawSomething 具有“播放”和“邀请”朋友列表的方式大致相同。

无论您是邀请还是玩,挑战都会存储在数据库中,随时准备好您的朋友登录。

我被困的地方是试图弄清楚我将如何允许用户在他们的朋友墙上发帖。我的 php 代码已经确定它们是否已注册,所以从那里我只需要发布到“朋友 B”的墙上。我做php的时间不是特别长,我发现我在其他地方处理的Facebook代码不像其他sdk等那样不言自明。

我不确定从哪里开始,因为所有的 Facebook“信息收集”,即朋友用户 ID 都是在应用程序本身中完成的。我可以很容易地将它传递给 php 代码,但是我不确定如何使用它来发布到他们的墙上。我假设由于服务器未登录到用户 A 的 Facebook 帐户,因此它需要以某种方式执行此操作,然后才能将其发布到他们朋友的墙上,但我不希望用户必须再次登录才能按顺序去做这个。鉴于 DrawSomething 允许您通过 Facebook 进行邀请,我知道这是可能的,但我不知道该怎么做。

总结一下:

这是一个 iOS 应用程序,我希望用户能够通过在朋友 Facebook 墙上发帖来邀请他们的朋友。

如果有人能指出我正确的方向,我将不胜感激。

4

1 回答 1

2

好的,所以在与这个斗争了一段时间并且看起来高低没有任何运气之后,我设法偶然发现了今天如何做到这一点。

我会在这里更新它,以便其他正在努力的人可以看到:

//using long longs to make sure the really long facebook ID's
//don't exceed integer limits

- (void)inviteUsingFacebook:(long long)facebookID
{
    NSString *numStr = [NSString stringWithFormat:@"%llu", facebookID];    
    NSString *desc = @"Download the app NOW from the App Store to play with ";
    desc = [desc stringByAppendingString:facebookNameStore];



NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               @"_YOUR_APP_ID_GOES_HERE", @"app_id",
                               @"YOUR_LINK", @"link",//most likely you will put itunes link here
                               @"FRIENDS_ID", @"target_id",//facebook id number of person you want to send to
                               @"http://URL_TO_IMAGE_YOU_WANT_TO_APPEAR_IN_WALL_POST.jpeg", @"picture",
                               @"YOUR APP NAME", @"name",
                               @"THIS IS AN INVITE EXAMPLE!", @"description",
                               nil];


[facebook dialog:@"stream.publish" andParams:params andDelegate:self];

}

就是这样!

我把它放到我的 AppDelegate 类中,当我点击邀请按钮时调用它——工作完成!

需要注意的一点是,这确实会导致一个弹出对话框,允许用户添加自己的消息,我个人认为这是一件好事。

于 2012-06-12T10:53:52.740 回答