我一直在尝试使用facebook iphone api从我的应用程序发布图像和一些文本(即使用FBRequest调用:@“facebook.stream.publish”和相应的参数。
我发现这种行为非常不稳定,因为它在我实施时首先工作正常,然后完全停止工作(请求会失败并且什么都不会显示),现在有时只发布文本和大多数当时只发布图库风格的图像(返回失败)。
我已经看到它在Facebook方面有所破坏,但是,我看到其他人的游戏定期发布图像和文字的内容,并想知道我是否可能会做一些根本不同的东西,那些不太可靠或稳定。有没有人遇到过这样的问题或对此更熟悉?
答案 0 :(得分:0)
看起来facebook很好地搞砸了使用流发布的任何人来发布图片。它们似乎已禁用将您发送的图像放入帖子中的功能。检查6月10日时间范围附近的这个bug线程。
http://developers.facebook.com/show_bug.cgi?id=7345
如果没有人自己托管图像,如果有人知道另一种让这种事情发挥作用的方式,那么听到它会很棒。
答案 1 :(得分:0)
同样,我在几天前使用他们自己的api实现了基于iphone的脸书图片+文字共享,行为从看似好转到不稳定和不可预测。
真正让我烦恼的是,在模拟器中,总是似乎有效。你也见过这个吗?
(顺便说一句我实际上并没有将图片上传到脸书,我只是发布了一条链接到我自己主持的图片的消息)
你可能最好坚持一个简单的后端,你可以完全控制自己。我用于没有(稳定)iphone api的社交网络的解决方案是将图像上传到我的后端,然后只需输入UIWebView,让后端处理所有OAuth和发布内容。 UIWebView回调应用程序的
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
在每个页面加载上,您可以使用它来确定请求是否失败,是成功还是进入等待状态。这有点像黑客,但它至少和你的后端一样可靠。
主要优点是 1)当facebook破坏它们时你可以解决问题 2)有100个经过验证的库可供使用
答案 2 :(得分:0)
更新:你可能想要添加到FBStreamDialog.m检查_session.apiKey是否为零。如果是,则字典将保持为空,并且帖子将显示空屏幕。
facebook提供的示例代码:
FBStreamDialog* dialog = [[[FBStreamDialog alloc] init] autorelease];
请参阅http://wiki.developers.facebook.com/index.php/Facebook_iPhone_SDK
然后FBDialog的init将获取全局会话对象,但它偶尔会失败。
当您自己管理会话时,请使用:
[[[FBStreamDialog alloc] initWithSession:self.fb_session] autorelease];
一切正常。
答案 3 :(得分:0)
Facebook API和SDK之间存在一些混淆。
请参阅this answer,而不是stream.publish
您打算使用feed
,但是当撰写该答案时您必须仍然使用stream.publish
,它可能已更新。希望我已经指出了你正确的方向。