【问题标题】:SLServiceTypeFacebook' was deprecated in iOS 11.0SLServiceTypeFacebook' 在 iOS 11.0 中已弃用
【发布时间】:2017-11-01 11:06:11
【问题描述】:

我正在使用 xcode 9 开发一个项目,我之前的代码之一发出警告说该代码已被弃用,它不会触发操作。代码如下。我该如何克服呢?

@IBAction func shareOnFacebookButtonPressed(_ sender: Any) {

    let shareToFacebook : SLComposeViewController = SLComposeViewController(forServiceType: SLServiceTypeFacebook)
    shareToFacebook.add(UIImage(named:"pureLightSocial"))
    self.present(shareToFacebook, animated: true, completion: nil)
}

【问题讨论】:

标签: ios swift xcode ios11 swift4


【解决方案1】:

Settings 应用中的FacebookTwitter 和其他应用选项已被删除。

这些应用现在将被视为其他应用,使用 iOS sharing extensions

let share = [image, text, url]
let activityViewController = UIActivityViewController(activityItems: share, applicationActivities: nil)
activityViewController.popoverPresentationController?.sourceView = self.view
self.present(activityViewController, animated: true, completion: nil)

您也可以使用第三方SDK进行个人分享

Facebook Sharing Doc

Twitter Sharing Doc

【讨论】:

  • 抱歉没听懂?
  • 因为在此不允许像 SLComposeViewController 允许的那样使用浏览器共享内容(图像和简短描述)。我需要像 SLComposeViewController 那样分享它。但现在看来它已经被弃用了
  • 那么你只有一个选项可以搭配 facebook 的 sdk 和 graph api。
  • 共享扩展有自己的功能并且它是内置的,所以你没有改变它。让我检查一下 sdk 共享。
  • 遗憾的是,自从写了这个答案后,Twitter 现在也停止了对 Twitter Kit 的支持,这又删除了另一个选项:blog.twitter.com/developer/en_us/topics/tools/2018/…
猜你喜欢
  • 2017-11-07
  • 2020-01-07
  • 2018-06-07
  • 1970-01-01
  • 1970-01-01
  • 2018-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多