【问题标题】:Ios Can i get Upload progress from Graph api Facebook?iOS 我可以从 Graph api Facebook 获取上传进度吗?
【发布时间】:2015-01-29 10:30:48
【问题描述】:

在我的应用程序中,我需要将视频上传到用户的 Facebook 墙上。我使用此代码并且它有效:

[FBRequestConnection startWithGraphPath:@"me/videos"
                             parameters:params
                             HTTPMethod:@"POST"
                      completionHandler:^(FBRequestConnection *connection,
                                          id result,
                                          NSError *error)
 {
     if (error)
     {
         //showing an alert for failure

     }
     else
     {
         //showing an alert for success



     }

 }];

我想在上传期间添加一个进度条...但我找不到任何有效的东西...我也阅读了文档,但我找不到任何东西...有一种方法可以管理@"me/videos" 的进度条?

【问题讨论】:

  • 不,没有端点。

标签: ios iphone facebook facebook-graph-api


【解决方案1】:

您可以在 FBRequestConnection 上设置 FBRequestConnectionDelegate,参见https://developers.facebook.com/docs/reference/ios/current/protocol/FBRequestConnectionDelegate/,并实现 requestConnection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite 方法。

您的进度应该是 totalBytesWritten/totalBytesExpectedToWrite。

如果要设置委托,还需要分别创建 FBRequest 和 FBRequestConnection,例如:

FBRequest *request = [FBRequest requestForUploadVideo:@"some_path"];
FBRequestConnection *connection = [[FBRequestConnection alloc] init];
[connection addRequest:request completionHandler:YOUR_HANDLER_HERE];
connection.delegate = self;
[connection start];

【讨论】:

  • 我已经在我的 .h 中实现了 requestConnection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite 方法和委托,但它从未被调用...我如何在上面的代码中设置“委托=自我”?
猜你喜欢
  • 1970-01-01
  • 2011-12-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-23
  • 1970-01-01
  • 2016-10-07
相关资源
最近更新 更多