疯狂-如何设置fb应用程序以便我的iOS应用程序可以发布到它';这是墙吗?
好的,我知道如何张贴到用户的墙上(时间线?),效果很好 我想要的是,当用户在iPhone上做某些事情时,应该在应用程序的墙上显示一个帖子。帖子应该以用户的名义发布 比如: 幸运的卢克说:大家好 Zaphod Beeblebrox开始使用Awesomeapp 另外:只有应用程序的用户才能发布到应用程序的墙壁上(我看到了页面“管理权限”上的设置-我可以设置谁可以发布到墙壁上。我不希望每个人都发布) 如果我是对的,那帖子也会自动出现在用户的feed中,不是吗?或者我必须在用户的墙上再贴一个帖子吗 当用户首次使用应用程序时,我请求以下权限:@“用户照片”@“用户视频”@“管理页面”@“阅读流”@“发布流”@“用户签入”@“朋友签入”@“电子邮件”@“用户位置” (最近我在某个地方阅读时添加了read_流和manage_页面,但没有帮助:) 这是我用来写这篇文章的代码:疯狂-如何设置fb应用程序以便我的iOS应用程序可以发布到它';这是墙吗?,ios,facebook,post,facebook-wall,Ios,Facebook,Post,Facebook Wall,好的,我知道如何张贴到用户的墙上(时间线?),效果很好 我想要的是,当用户在iPhone上做某些事情时,应该在应用程序的墙上显示一个帖子。帖子应该以用户的名义发布 比如: 幸运的卢克说:大家好 Zaphod Beeblebrox开始使用Awesomeapp 另外:只有应用程序的用户才能发布到应用程序的墙壁上(我看到了页面“管理权限”上的设置-我可以设置谁可以发布到墙壁上。我不希望每个人都发布) 如果我是对的,那帖子也会自动出现在用户的feed中,不是吗?或者我必须在用户的墙上再贴一个帖子吗 当用
NSString *graphPath = [NSString stringWithFormat: @"/%@/feed?access_token=%@", FBAppID, [FBAccessToken stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]];
NSLog(@"graph path %@", graphPath);
NSDictionary *postParams =
@{
@"Test": @"message"
};
[FBRequestConnection
startWithGraphPath:graphPath
parameters:postParams
HTTPMethod:@"POST"
completionHandler:^(FBRequestConnection *connection,
id result,
NSError *error) {
if (error) {
NSLog(@"error: domain = %@, code = %d, %@",
error.domain, error.code, error.description);
} else {
NSLog(@"Posted action, id: %@",
[result objectForKey:@"id"]);
}
// Show the result in an alert
}];
返回错误100(缺少消息或附件-OAutheException)
我在谷歌上搜索了两天,找不到合适的指南。。。救命!!!:)
[编辑]我可能知道一些事情
似乎是NSDictionary*postParams@{@“Test”:@“message”}代码>是问题所在。
当我使用适当的[[NSDictionary alloc]initWithObjectsAndKeys:…]时代码>似乎有效。。。我们拭目以待:)
[编辑]好的-我应该休息一下,看起来
使用@{…}初始化字典首先需要键,然后需要对象,而[NSDictionary dictionary WithObjectsAndKeys:…]则首先设置对象,然后设置键
我现在觉得有点傻…这就是我在代码中的做法:
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"My app's name", @"name",
@"Some cool caption", @"caption",
@"Super description", @"description",
@"http://stackoverflow.com//", @"link",
nil];
[FBRequestConnection startWithGraphPath:@"me/feed"
parameters:params
HTTPMethod:@"POST"
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
.....
}];
请注意图形路径
,它与您的略有不同。在myInfo.plist
中还有一个facebookId值:
<key>FacebookAppID</key>
<string>123456789876543</string>
FacebookAppID
123456789876543
和facebook url方案:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb123456789876543</string> (fb + your app id)
</array>
</dict>
</array>
CbundleUrlTypes
谢谢-此错误似乎是由于我使用NSDictionary造成的。当我把它改成旧代码时,它开始工作了。。。我想,这是因为我没有分配NSDictionary,但你似乎也使用了一个临时字典,而且它很有效。。。奇怪…我很高兴这有帮助。我不想写字典初始化之类显而易见的东西,但我很高兴我写了=)