ios - FacebookShare 0.3.2 Swift ShareDialog 控制台错误
问题描述
我正在尝试使用 FacebookShare Swift SDK 0.3.2 而不是 FBSDKShareKit 在呈现的视图控制器中显示具有以下功能的 Facebook ShareDialog
import FacebookShare
func facebookShare() {
let photo = Photo(image: image, userGenerated: true)
let myContent = PhotoShareContent(photos: [photo])
let shareDialog = ShareDialog(content: myContent)
shareDialog.presentingViewController = self
shareDialog.mode = .automatic
shareDialog.completion = { result in
print("- in completion")
}
do {
try shareDialog.show()
} catch {
print(error)
}
我在控制台中收到此错误。
2018-09-03 16:12:11.235865+0100 APPNAME[1865:386979] FBSDKLog: 参数 { "advertiser_tracking_enabled" = 0; "anon_id" = "XXXXX-XXXXXX-XXXXX-XXXXX"; “application_tracking_enabled”=1;"custom_events" = "[{\"_ui\":\"no_ui\",\"_eventName\":\"fb_dialog_share_result\",\"_logTime\":1535987524,\"fb_dialog_outcome_error_message\":\"错误域= com.facebook.sdk.share Code=2 \\"(null)\\" UserInfo={com.facebook.sdk:FBSDKErrorArgumentValueKey=, com.facebook.sdk:FBSDKErrorDeveloperMessageKey=必须具有资产、图像或图像URL 值。 , com.facebook.sdk:FBSDKErrorArgumentNameKey=photo}\",\"fb_dialog_outcome\":\"Failed\",\"_implicitlyLogged\":\"1\"}]"; 事件 = "CUSTOM_APP_EVENTS"; extinfo = "[\"i2\",\"com.APPNAME\",\"1\",\"1.0\",\"11.4.1\",\"iPhone8,4\",\"en_GB\ ",\"BST\",\"三\",320,568,\"2.00\",2,60,46,\"欧洲\/伦敦\"]"; "url_schemes" = "[\"fbapiXXXXXXX\",\"fbXXXXXXXXX\",\"twitterkit-sasasasasasasa\",\"com.googleusercontent.apps.XXXXXXXXXX-XXXXXXXX\"]"; }
虽然错误说:
必须具有资产、图像或 imageURL 值。
我已经确认一个 UIImage 在 myContent 中,通过断点传递给 ShareDialog。
解决方案
这是此处提出的 FacebookSDK 的问题:
https://github.com/facebook/facebook-sdk-swift/issues/264
在修复之前的临时解决方法,从 pod 文件中删除 Facebook pod 并添加以下内容,然后运行 pod install。
pod 'FacebookCore', '0.3.1'
pod 'FacebookLogin', '0.3.1'
pod 'FacebookShare', '0.3.1'
pod 'FBSDKCoreKit', '4.35.0'
pod 'FBSDKLoginKit', '4.35.0'
pod 'FBSDKShareKit', '4.35.0'
推荐阅读
- jquery - 如何在 Jquery Sortable Plugin 上实现自动垂直滚动?
- tizen - 如何更改 Tizen Watch Emulator 的区域设置以测试应用程序
- javascript - 如何根据当前时间过滤 xml 数据,直到 3 小时后?
- extjs - extjs 如何在同一视图中使用自定义组件的两个或多个不同实例
- excel - 在 Excel 中测试 A 范围是否完全为空
- django - 如何解决 Django 中“计划”和“执行”模型的构造?
- javascript - 在 JavaScript 中验证电子邮件
- python - 如何保存单个值并重新打开它们以供以后使用?
- php - Jquery 发送带有附件的电子邮件
- javascript - 如何在单独的行中打印每个单词。除第一个单词外,每个单词都大写