gpt4 book ai didi

objective-c - iOS : Post on wall of Selected FB Friends

转载 作者:搜寻专家 更新时间:2023-10-30 20:18:41 26 4
gpt4 key购买 nike

场景:我只想将帖子分享到所选好友的墙上。

满足先决条件:从整个 FB 好友列表中,仅选择必要的好友并创建一个数组

尝试的步骤:

试验 1: 使用 FBWebDialogs 并调用方法 + (void)presentFeedDialogModallyWithSession:(FBSession *)session parameters:(NSDictionary *)参数处理程序:(FBWebDialogHandler)处理程序;

在参数字典中,为“to”设置值。

当收件人只有一个时,效果非常好。如果收件人不止一个,则无法共享。

试验 2: 使用 FBDialogs 并调用 + (FBAppCall *)presentShareDialogWithParams:(FBShareDialogParams *)params clientState:(NSDictionary *)clientState 处理程序:(FBDialogAppCallCompletionHandler)处理程序;

FBShareDialogParams 中,设置 friend 数组。工作良好。但仅在安装 Facebook 应用程序时有效。否则不起作用。

...

有人能帮我解决这个问题吗:

  1. 在多个 friend 的墙上分享。
  2. 应该在有或没有正在手机上安装 Facebook 应用程序。

谢谢

最佳答案

你必须做类似的事情:

FBShareDialogParams *p = [[FBShareDialogParams alloc] init];
p.friends = friendIdsArray;`
p.link = url;

//check if the FB app is installed and can use this method
if ([FBDialogs canPresentShareDialogWithParams:p]) {
[FBDialogs presentShareDialogWithParams:p
clientState:nil
handler:^(FBAppCall *call,
NSDictionary *results,
NSError *error) {
//do some error checking
}
// fallback to what is essentially a webview
else {
// string of comma separated Facebook Ids
NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"1234,5678", @"to", nil];
NSString *message = @"I love Objective-C";
[FBWebDialogs presentRequestsDialogModallyWithSession:[FBSession activeSession]
message:message
title:nil
parameters:params
handler:^(FBWebDialogResult result,
NSURL *resultURL, NSError *error) {
// do some error checking
}

这就是我使用的方法,我发现的唯一问题是发送请求时可以包含的 Facebook ID 数量似乎有一些未知限制。它会有所不同,取决于我找不到记录的因素。我认为 FB 正试图阻止人们辱骂他人/向他人发送垃圾邮件,这是有充分理由的......

关于objective-c - iOS : Post on wall of Selected FB Friends,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19499378/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com