通过 FB SDK for iOS 将视频分享到 facebook

Posted

技术标签:

【中文标题】通过 FB SDK for iOS 将视频分享到 facebook【英文标题】:Sharing Video to facebook via FB SDK for iOS 【发布时间】:2013-08-06 06:41:25 【问题描述】:

我在我的应用中创建了一个视频。 我想通过 Facebook 原生 SDK 将此视频分享到用户的 Facebook 墙。 我能够使视频共享正常工作,但在共享之前没有向用户显示预览/共享对话框。视频直接发布到用户的墙上。 这是我打开活动会话的代码

[FBSession openActiveSessionWithPublishPermissions:permissions defaultAudience:FBSessionDefaultAudienceOnlyMe allowLoginUI:YES completionHandler:^(FBSession *session, FBSessionState status, NSError *error)

一旦我激活了会话,我就会调用下面的方法来分享视频

- (void)sendVideoFeedRequestWithParams:(NSMutableDictionary *)params

// create the connection object
FBRequestConnection *newConnection = [[FBRequestConnection alloc] init];

// create a handler block to handle the results of the request
FBRequestHandler handler =
^(FBRequestConnection *connection, id result, NSError *error) 
    // output the results of the request
    [self requestCompleted:connection result:result error:error];
;

// create the request object, using the /me as the graph path
FBRequest *request = [[FBRequest alloc] initWithSession:FBSession.activeSession graphpath:@"me/videos" parameters:params HTTPMethod:@"POST"];

// add the request to the connection object, if more than one request is added
// the connection object will compose the requests as a batch request; whether or
// not the request is a batch or a singleton, the handler behavior is the same,
// allowing the application to be dynamic in regards to whether a single or multiple
// requests are occuring
[newConnection addRequest:request completionHandler:handler];

// if there's an outstanding connection, just cancel
[self.requestConnection cancel];

// keep track of our connection, and start it
self.requestConnection = newConnection;
[newConnection start];


我发送给这个方法的参数是:

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               videoData, @"video.mov",
                               @"video/quicktime", @"contentType",
                               @"Video Test Title", @"title",
                               @"Video Test Description", @"description",
                               nil];

就发布视频而言,这很有效。但是,我希望显示一个共享/预览对话框。 有人对如何完成它有任何提示吗?

【问题讨论】:

请在此处使用新的 facebook SDK ***.com/a/29427089/2787452查看它 【参考方案1】:

您需要自己创建一些东西或在 github(或类似网站)上搜索现有解决方案。类似于自定义警报视图,您可以在其中允许用户输入文本、点击时播放的视频缩略图和几个按钮。

【讨论】:

感谢您的回复。只能这样走。

以上是关于通过 FB SDK for iOS 将视频分享到 facebook的主要内容,如果未能解决你的问题,请参考以下文章

FB 分享很少在 iOS 上运行

ShareREC for iOS v1.0.4 已经公布

fb ios sdk session用于现有的fb connect网站

FB iOS SDK 自定义令牌缓存问题

我可以同时使用 FB iOS SDK 和 FB Graph API 来检索 FB 好友列表吗?

在 Facebook iOS SDK 4.4 上分享视频