ios - Facebook Messenger 无法使用 Swift 在 iOS 9 中打开 URL

标签 ios facebook swift ios9 messenger

我在 iOS 9 上使用 Facebook Messenger SDK,但无法共享。即使我在我的 iPhone 上安装了 Facebook Messenger,它也好像不存在一样。

以下行将返回 0: FBSDKMessengerSharer.messengerPlatformCapabilities()

我想提一下,一切都在 iOS 8 上正常运行。

最佳答案

如果您使用任何可以将应用程序切换到 Facebook 应用程序的 Facebook 对话框(例如,登录、共享、应用程序邀请等),您将需要更新应用程序的 plist 以处理 https://developer.apple.com/videos/wwdc/2015/?id=703 中描述的 canOpenURL 更改.

如果您使用 iOS SDK 9.0 重新编译,如果您使用的是 SDK v4.5 或更早版本,请将以下内容添加到应用程序的 plist 中:

<key>LSApplicationQueriesSchemes</key> <array> <string>fbapi</string> <string>fbapi20130214</string> <string>fbapi20130410</string> <string>fbapi20130702</string> <string>fbapi20131010</string> <string>fbapi20131219</string> <string>fbapi20140410</string> <string>fbapi20140116</string> <string>fbapi20150313</string> <string>fbapi20150629</string> <string>fbapi20160328</string> <string>fbauth</string> <string>fbauth2</string> <string>fb-messenger-api20140430</string> </array>

如果您使用的是早于 v4.6 版本的 FBSDKMessengerShareKit,请同时添加

<string>fb-messenger-platform-20150128</string> <string>fb-messenger-platform-20150218</string> <string>fb-messenger-platform-20150305</string>

如果您使用的是v4.6.0或更高版本的SDK,您只需添加:

<key>LSApplicationQueriesSchemes</key> <array>      <string>fbapi</string>      <string>fb-messenger-api</string>       <string>fbauth2</string>        <string>fbshareextension</string> </array>

这将允许 FacebookSDK 集成正确识别已安装的 Facebook 应用程序以执行应用程序切换。如果您不使用 iOS SDK 9.0 重新编译,您的应用将被限制为 50 个不同的方案(调用 canOpenURL 之后返回 NO)。

关于ios - Facebook Messenger 无法使用 Swift 在 iOS 9 中打开 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31802662/

相关文章:

ios - 更改默认值 "Not Selected"UITabBarItem 图像颜色

ios - 在没有服务器的设备上 react native 运行应用程序

ios - 如何将 ObservableObject 与 UIViewRepresentable 一起使用

ios - Swift NSObject 属性不是可选的,但它打印可选

algorithm - 算法描述中的 "straightforward UF"指的是什么?

arrays - 在 Swift 4 中使用 decodable 访问嵌入式 JSON

ios - 如何在 iOS Swift 中根据环境设置不同的 Google-Service-info-plist 文件?

ios - 返回调用对象类型的方法

Facebook:应用程序配置不允许给定 URL

ruby-on-rails - 使用 Capybara/Rspec 测试 Facebook 的 OAuth