Firebase Unity SDK 8.x 업데이트 후 iOS CocoaPods 의존성 충돌
프로젝트에서 쓰던 Firebase SDK for Unity 패키지를 v7.2.0에서 v8.8.0으로 올린 뒤 iOS 빌드 중에 아래 오류가 발생했다.
iOS framework addition failed due to a CocoaPods installation failure. This will will likely result in an non-functional Xcode project.
After the failure, "pod repo update" was executed and succeeded. "pod install" was then attempted again, and still failed. This may be due to a broken CocoaPods installation. See: https://guides.cocoapods.org/using/troubleshooting.html for potential solutions.
pod install output:
Analyzing dependencies[!] CocoaPods could not find compatible versions for pod "FirebaseCore": In Podfile: Firebase/DynamicLinks (= 8.11.0) was resolved to 8.11.0, which depends on Firebase/CoreOnly (= 8.11.0) was resolved to 8.11.0, which depends on FirebaseCore (= 8.11.0)
Firebase/DynamicLinks (= 8.11.0) was resolved to 8.11.0, which depends on FirebaseDynamicLinks (~> 8.11.0) was resolved to 8.11.0, which depends on FirebaseCore (~> 8.0)
FirebaseInstanceID (= 7.11.0) was resolved to 7.11.0, which depends on FirebaseCore (~> 7.0)시도한 방법
섹션 제목: “시도한 방법”- Stack Overflow: CocoaPods could not find compatible versions for pod Firebase/CoreOnly → 실패
- firebase/quickstart-unity#937 → 실패
- iOS 최소 SDK 타깃 10.0 → 11.0 → 실패
- CocoaPods 업데이트 → 실패
pod 'FirebaseInstanceID', '7.11.0'제거 → 성공
platform :ios, '10.0'
target 'UnityFramework' do pod 'AppsFlyerFramework', '6.3.1' pod 'FBAudienceNetwork', '~> 6.4.1' pod 'FBSDKCoreKit', '~> 9.0' pod 'FBSDKGamingServicesKit', '~> 9.0' pod 'FBSDKLoginKit', '~> 9.0' pod 'FBSDKShareKit', '~> 9.0' pod 'Firebase/Analytics', '8.11.0' pod 'Firebase/Auth', '8.11.0' pod 'Firebase/Core', '8.11.0' pod 'Firebase/Crashlytics', '8.11.0' pod 'Firebase/DynamicLinks', '8.11.0' pod 'Firebase/Installations', '8.11.0' pod 'Firebase/Messaging', '8.11.0' pod 'FirebaseInstanceID', '7.11.0' // ERROR pod 'GoogleMobileAdsMediationFacebook', '6.4.1.0' pod 'Google-Mobile-Ads-SDK', '~> 9.0'endtarget 'Unity-iPhone' doend7.x와 8.x 사이의 CocoaPods 의존성 충돌이었다. FirebaseInstanceID 7.11.0이 FirebaseCore ~> 7.0을 요구해 8.11.0 계열과 함께 설치될 수 없었다. 5번 방법으로 해결했다.
Firebase SDK 문서를 보면 Instance ID는 8.0.0부터 deprecated다.