ios关于将 facebook sdk从9.3.0升级到16.1.3遇到的问题

升级过程遇到的问题:

1.使用cocapods最多只能拉到14.1.0版本

解:需要将platform :ios, '11.0' 修改为platform :ios, '12.0'

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '12.0'
target 'Slg_Map_Frame-mobile' do  
    #FaceBook
    'FBSDKCoreKit'
end
use_frameworks!

因为从15.0开始,部署版本就是12了“s.ios.deployment_target = '12.0'”

https://github.com/facebook/facebook-ios-sdk/blob/main/FBSDKCoreKit.podspec

2.“Use of undeclared identifier... ”

解:需要设置好Bridging Header进行相互调用。

You should consider adding the appropriate XCode frameworks to your build: SafariServices and AuthenticationServices.
Then just import them:
#import <AuthenticationServices/AuthenticationServices.h>
#import <SafariServices/SafariServices.h>
#import <FBSDKLoginKit/FBSDKLoginKit-Swift.h>

因为新版本的sdk是用swift写的,我原本的代码是用OC写的,需要设置好桥头让OC能够调用swift的接口。原来代码几乎不用动;

https://github.com/firebase/quickstart-ios/blob/master/authentication/LegacyAuthQuickstart/README.md

Difficulty compiling 15.1.0 from objective-c code · Issue #2140 · facebook/facebook-ios-sdk · GitHub

注意根据16.1.3版本做以下调整:

  • 使用permissions替代过时的readPermissions
  • handle用户取消登录的情况
  • 根据新版API更新用户信息的获取方式

猜你喜欢

转载自blog.csdn.net/qq_40150532/article/details/132337985