FaceBook的SLComposeViewController始终返回SLComposeViewControllerResult.Done

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

然而,现在,在Apple或Facebook进行更新后(更改包括撰写视图的新设计),completionHandler始终获得结果Done.

我得到了相同的行为:

> iPhone 6s以及运行iOS 9.0.2
> iPhone 6加运行iOS 9.0.2
>运行iOS 8.2的iPhone 5s

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

        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

点赞