FaceBook 的 SLComposeViewController 总是 returns SLComposeViewControllerResult.Done

SLComposeViewController for FaceBook always returns SLComposeViewControllerResult.Done

就在最近,我的标准共享代码按预期运行。当用户取消 Facebook 分享时,SLComposeViewController.completionHandler 返回 SLComposeViewControllerResult。Cancelled

然而现在,在 Apple 或 Facebook 进行更新后(更改包括对撰写视图的新设计),completionHandler 总是得到结果 Done

我在

上也有同样的行为

还有其他人遇到同样的问题吗?下面是我的代码:

        let fbComposeViewController = SLComposeViewController(forServiceType: SLServiceTypeFacebook)

        fbComposeViewController.addURL( NSURL(string:"http://www.some.url.com/)"))
        fbComposeViewController.completionHandler = { (result:SLComposeViewControllerResult) -> Void in
            switch result {
            case SLComposeViewControllerResult.Cancelled:
                print("Cancelled") // Never gets called
                break

            case SLComposeViewControllerResult.Done:
                print("Done")
                break
            }
        }

        self.presentViewController(fbComposeViewController, animated: true) {
        }

你测试这个的时候有安装Facebook应用吗?如果不是,那可以解释这种行为。另请参阅此评论:https://developers.facebook.com/bugs/608854599254853/?comment_id=565037930316792