使用IOS SDK for Facebook(3.1),我发现在设置项目后,我无法更改默认受众。
例如,我将我的测试项目设置为发布到“Only Me”。它工作正常。我正在处理这个例子,我从观众“只有我”开始做出改变。
http://developers.facebook.com/docs/howtos/publish-to-feed-ios-sdk/
然后我安排打电话给以下人员:
[FBSession.activeSession
reauthorizeWithPublishPermissions:
[NSArray arrayWithObject:@"publish_actions"]
defaultAudience:FBSessionDefaultAudienceFriends
completionHandler:^(FBSession *session, NSError *error) {
if (!error) {
// If permissions granted, publish the story
NSLog (@"Here goes nothing");
[self publishStory];
}
}];
应该将故事发布到DefaultAudienceFriends。但是,它继续发布给Only Me。
不应该这样吗?我错过了什么吗?
答案 0 :(得分:2)
好的,这是我想出的答案,它解决了我的特殊需求。我在Facebook中更改了应用程序的隐私设置:
http://www.facebook.com/settings?tab=applications
考虑到这一点,这是有道理的。我,作为这个应用程序的用户(我碰巧创建,但可能不相关),我指定它代表我发布时显示的行为。
所以我很高兴,因为现在我可以使用我的应用程序,自由测试它,而不会打扰任何人。当我准备好的时候,我可以更广泛地发布它。
答案 1 :(得分:0)
在授权流程中,您可以在“仅限我”的情况下设置默认受众群体。现在您的应用程序具有尝试重新授权的权限可能无效,除非您可能已注销并重新登录。您可以尝试做的是将所需的受众作为post参数的一部分传递。
所以,基于样本,假设你想要“只有我”,你会添加:
[self.postParams setObject:@"{'value':'SELF'}",
forKey:@"privacy"];
如果您想要“朋友”,您可以使用:
[self.postParams setObject:@"{'value':'ALL_FRIENDS'}",
forKey:@"privacy"];