【问题标题】:How handle cancel button of facebook dialog apprequest?如何处理facebook对话框apprequest的取消按钮?
【发布时间】:2012-08-31 00:48:21
【问题描述】:

如您所知,您可以显示一些 Facebook 视图来进行一些操作,例如应用请求、发布等。有一个委托来管理回调,例如:dialogDidComplete:dialogDidNotComplete:。视图是这样的:

但取消按钮和分享按钮之间没有区别。您将在dialogDidComplete: 中获得相同的回调。管理取消的唯一方法是角落里的小十字架。 就我而言,如果用户按下共享而不是当他按下取消时,我想做一些操作。 私人社交网络 Path 管理此案,我想知道如何处理?

你们有什么想法吗?

【问题讨论】:

  • This 可能是一个类似的问题。见韦恩刘的回答。我希望它有所帮助。

标签: ios facebook facebook-ios-sdk


【解决方案1】:

如果我没记错的话:

  • 如果你按Share,你会得到一个requestID作为返回URL的一部分

  • 如果您按 Cancel,您将返回到 dialogDidComplete,但它不会将 requestID 作为返回 URL 的一部分返回。

代码:

- (void)dialogCompleteWithUrl:(NSURL *)url {
     if (![url query]) {
         NSLog(@"User canceled dialog or there was an error");
         return;
     }
  }

【讨论】:

  • 可能在共享的情况下,但对于应用请求来说,没有这样的......
  • 我没试过。但是您可以使用 Hackbook 示例并将 NSLog 添加到 URL 并查看它。这似乎更像是一个实现问题,而不是我们这边的一个错误。谢谢!
  • 感谢您的回答,我在您提到的 hackbook 示例中找到了解决方案。奇怪的是dialogDidNotCompleteWithUrl:dialogDidNotComplete:dialog:(FBDialog*)dialog didFailWithError:中没有进行取消回调。
  • 我也依赖 [url 查询],遗憾的是 Facebook 没有使用 dialogDidNotComplete: 或 dialog:didFailWithError: 顾名思义......为了成功,url 看起来像: fbconnect://success?request=298855633579176&to%5B0%5D=100003013638786 失败, url 只是: fbconnect://success 遗憾的是它还包含成功而不是数据中的失败
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-25
  • 2012-05-07
  • 1970-01-01
相关资源
最近更新 更多