gpt4 book ai didi

ios - 将 FB SDK 更新到最新版本不起作用

转载 作者:行者123 更新时间:2023-12-05 06:27:44 50 4
gpt4 key购买 nike

我有一个使用旧版本 FBSDK 的遗留应用程序,每次登录 FB 开发人员仪表板时,我都会看到此警告:

Your Facebook SDK for iOS is out of date and missing important iOS 11 fixes that make it easier for people to log into your app. Upgrade Now

我已经使用 cocoapods 将我的 FB SDK 更新到 v4.40.0(已通过 NSLog [FBSDKSettings sdkVersion] 确认)。但现在让我感到困惑的是,即使 SDK 已成功更新,警告仍然存在。

FB 下达更新指示:

To make your app compatible with iOS 11, use the latest Facebook SDKs for iOS. If you link to the SDKs with CocoaPods, you must update your pods for the SDKs your app uses and recompile your app. You can also download the latest version of the Facebook iOS SDK, integrate it into your app, and recompile.

到目前为止我所做的是:
• 使用 cocoapods 更新 SDK ✅
• 重新编译应用 ✅

有谁知道这是警告没有消失的真正原因。

提前致谢。

最佳答案

我知道这是一个古老的查询,但如果有人偶然发现它,您可能会考虑以下几点。

a)Facebook 需要接收应用程序事件才能在仪表板上反射(reflect)更新。尝试触发一个事件。例如,启动应用程序。

b) 检查您是否正确初始化了 SDK。在 didFinishLaunchingWithOptions 中添加 ApplicationDelegate.shared.initializeSDK()

c)由于 Apple 正在严格监控用户对 App Tracking 的同意,因此将 FacebookAutoLogAppEventsEnabledFacebookAdvertiserIDCollectionEnabled 添加到 info.plist 并分别设置适当的 bool 值。

推荐的方法是设置为与false相同,征求用户同意并在批准后,将值设置为true。使用以下代码。

if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
Settings.shared.isAdvertiserTrackingEnabled = true
Settings.shared.isAdvertiserIDCollectionEnabled = true
case .denied:
Settings.shared.isAdvertiserTrackingEnabled = false
Settings.shared.isAdvertiserIDCollectionEnabled = false
default:
Settings.shared.isAdvertiserTrackingEnabled = false
Settings.shared.isAdvertiserIDCollectionEnabled = false
}
}
}

d) 有时,您的应用程序的最低部署目标可能会阻止 SDK 更新到最新版本。要确认是否是这种情况,请将 pod 设置为 podfile 中的最新版本,如下所示:

pod 'FBSDKCoreKit', '~>15.0.0'

使用 pod updatepod install 更新 pod如果最小部署目标阻碍了更新,您将收到如下错误:

[!] CocoaPods could not find compatible versions for pod "FBSDKCoreKit":
In Podfile:
FBSDKCoreKit (~> 15.0.0)

Specs satisfying the `FBSDKCoreKit (~> 15.0.0)` dependency were found, but they required a higher minimum deployment target.

如果发生这种情况,请尝试更改应用的最低部署目标。还要确保您的 podfile 中的平台也设置为新的和更高的最低部署目标,例如 platform :ios, '12.0'

希望对你有帮助!

关于ios - 将 FB SDK 更新到最新版本不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55040745/

50 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com