我正在重温一个旧的项目(用Swift 3构建,现在使用Swift 4),看起来Facebook SDK有一些问题。
我搜索了最初的问题,并找到了一个解决方案这里,建议添加到我的pod文件:
post_install do |installer|
installer.pods_project.targets.each do |target|
if ['FacebookCore', 'FacebookLogin'].include? target.name
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '3.2'
end
end
end
end在pod install和运行项目之后,它似乎清除了我以前的错误,但是我仍然在第151行return Set(behaviors)上看到了Pods>Pods>FacebookCore>SDKSettings.swift>enabledLoggingBehaviors中的一个错误。
错误是(图片):
Argument type 'SDKLoggingBehavior?' does not conform to expected type 'Sequence'
我不知道如何处理这个错误,有人知道如何修复这个错误以使Facebook再次工作吗?
提前感谢您的帮助!
发布于 2018-11-19 06:55:23
内部SDKSetting.swift
将enabledLoggingBehaviors函数替换为
public static var enabledLoggingBehaviors: Set<SDKLoggingBehavior> {
get {
let behaviors = FBSDKSettings.loggingBehavior().compactMap { object -> SDKLoggingBehavior? in
if let value = object as? String {
return SDKLoggingBehavior(sdkStringValue: value)
}
return nil
}
return Set(behaviors)
}
set {
let behaviors = newValue.map({ $0.sdkStringValue })
FBSDKSettings.setLoggingBehavior(Set(behaviors))
}
}希望能帮上忙。
发布于 2019-10-31 11:04:44
将flatMap替换为compactMap,仅此而已。
https://stackoverflow.com/questions/53144404
复制相似问题