firebase / firebase-ios-sdk

Firebase SDK for Apple App Development
https://firebase.google.com
Apache License 2.0
5.59k stars 1.46k forks source link

After upgrading to 10.25.0 getting issue of Undefined symbol: _FIRGetLoggerLevel for FirebaseAppCheck #12899

Closed kalyanichaudhari03 closed 4 months ago

kalyanichaudhari03 commented 5 months ago

Description

Suddenly our app getting crash in TestFlight build, so i did research & found that i need to upgrade firebase pod. So i have updated pod files now i am having firebase 10.25.0 version installed. But while trying to build app it shows below error

Screenshot 2024-05-06 at 12 15 58 PM

Undefined symbol: _FIRGetLoggerLevel

Reproducing the issue

No response

Firebase SDK Version

10.25.0

Xcode Version

15.3

Installation Method

CocoaPods

Firebase Product(s)

App Check

Targeted Platforms

iOS

Relevant Log Output

No response

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet
```json Replace this line with the contents of your Package.resolved. ```

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet
```yml Replace this line with the contents of your Podfile.lock! ```
google-oss-bot commented 5 months ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

ncooke3 commented 5 months ago

Are you using use_frameworks! in your Podfile?

kalyanichaudhari03 commented 5 months ago

@ncooke3 Yes

ncooke3 commented 5 months ago

If you go to your target's build settings, then the Other Linker Flags setting, what do you see? There should be a row that says $(inherited) I believe.

kalyanichaudhari03 commented 5 months ago

@ncooke3 Yes..

@ncooke3 Hey Could you please give me more details or a solution to fix this issue ASAP instead of just a single question daily? On the App Store our app is crashing because of Firebase crashes like below..

_Crash nanopb Regressed issue encode_field EXC_BAD_ACCESS (KERN_INVALIDADDRESS)

To fix these major crashes of Firebase I have updated Firebase sdk & now this compile error i am getting...

please give solution to fix this compilation error

paulb777 commented 5 months ago

@kalyanichaudhari03 The issue does not reproduce for us. Please fill out the full issue template including the Podfile.lock file and even better, provide a fully reproducible example demonstrating the issue.

kalyanichaudhari03 commented 4 months ago

@paulb777 Okay.. Our iOS App has unity games in it. You can also take look at pod file & podlock file.

def commonPods
use_frameworks!

  pod 'FirebaseCore'
  pod 'FirebaseDatabase'
  pod 'FirebaseAuth'
  pod 'FirebasePerformance'
  pod 'FirebaseMessaging'
  pod 'FirebaseCrashlytics'
  pod 'FirebaseStorage'
  pod 'FirebaseFirestore'
  pod 'FirebaseFirestoreSwift'
  pod 'FirebaseRemoteConfig'
  pod 'FirebaseAppCheck'

  pod 'FBSDKCoreKit'
  pod 'FBSDKLoginKit'
  pod 'FBSDKShareKit'
  pod 'Alamofire'#, '~> 4.7'
  pod 'AlamofireImage'#, '~> 3.4'
  pod 'MBProgressHUD'#, '~> 1.2.0'
  pod 'BSKeyboardControls'#, '~> 2.2'
  pod 'IQKeyboardManagerSwift'
  pod 'GradientView'
  pod 'UIViewAppearanceSwift', :git => 'https://github.com/levantAJ/UIViewAppearanceSwift.git', :commit => '2ba05f14a8c1a7eb16b1525ac325962516d6992a'
  pod 'KeenClient'
  pod 'CCBottomRefreshControl'
  pod 'Spring', :git => 'https://github.com/MengTo/Spring.git'
  pod 'mailcore2-ios'
  pod 'TrueTime'
  pod 'Version'
  pod "GTProgressBar"
  pod 'SwiftKeychainWrapper'
  pod 'Gleap'#, '>= 8.0.0'
  pod 'AppsFlyerFramework'
  pod 'MessageKit'
  pod 'Analytics'
  pod 'Segment-Mixpanel'
  pod 'Segment-Amplitude'
  pod 'segment-appsflyer-ios'
  pod 'Segment-Firebase'
  pod "PullToRefreshKit"
  pod 'Stripe'
  pod 'StripePaymentSheet'
  pod 'Google-Mobile-Ads-SDK'

#  pod 'Appgain'
#  pod 'Appgain-Rich'
  pod 'SDWebImage'
  pod 'SDWebImageSwiftUI'
#  pod 'BraintreeDropIn'

end

target 'PlayAndEarn' do
  use_frameworks! 

  commonPods

end

# Resolve the problem of upload to App Store "Too many symbol files"
post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['SUPPORTS_UIKITFORMAC'] = 'NO'
            config.build_settings['SUPPORTS_MACCATALYST'] = 'NO'
            config.build_settings['DEBUG_INFORMATION_FORMAT'] = 'dwarf'
            if config.name == 'Debug'
              config.build_settings['OTHER_SWIFT_FLAGS'] = ['$(inherited)', '-Onone']
              config.build_settings['SWIFT_OPTIMIZATION_LEVEL'] = '-Owholemodule'
            end
        if target.respond_to?(:product_type) and target.product_type == "com.apple.product-type.bundle"
            config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO'
            end
      if config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'].split('.').first.to_i < 12
               config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
             end
    end
  end
end

Also here is our podlock file.

PODS:

DEPENDENCIES:

SPEC REPOS: trunk:

EXTERNAL SOURCES: Spring: :git: https://github.com/MengTo/Spring.git UIViewAppearanceSwift: :commit: 2ba05f14a8c1a7eb16b1525ac325962516d6992a :git: https://github.com/levantAJ/UIViewAppearanceSwift.git

CHECKOUT OPTIONS: Spring: :commit: 50d92a5b9e08848387ae95bf44c6ad20834f7083 :git: https://github.com/MengTo/Spring.git UIViewAppearanceSwift: :commit: 2ba05f14a8c1a7eb16b1525ac325962516d6992a :git: https://github.com/levantAJ/UIViewAppearanceSwift.git

SPEC CHECKSUMS: abseil: d121da9ef7e2ff4cab7666e76c5a3e0915ae08c3 Alamofire: f36a35757af4587d8e4f4bfa223ad10be2422b8c AlamofireImage: 843953fa97bee5f561cf05d83abd759e590b068d Amplitude: 1c9fca37993bd5742cf7c121d432bf8bf5a28ccb Analytics: 9655e0e1c71ea98107cfcb2b14891168acc6c6c9 AnalyticsConnector: a53214d38ae22734c6266106c0492b37832633a9 AppCheckCore: 58dbd968d93b7c56650c28a1ac404d7a54307c0e AppsFlyerFramework: 0a68f5b72bbbadfa71d4ae3eaf040e82d62e8518 BoringSSL-GRPC: 1e2348957acdbcad360b80a264a90799984b2ba6 BSKeyboardControls: b701935e789961102e3f20063bba7185800a2d3f CCBottomRefreshControl: 389780b4488321c91d18f66a6da5ef9606df6de5 FBAEMKit: 97eaf41451b49691447df831f7f425229ae64b66 FBSDKCoreKit: e34084567d11cfdd4787ace2b1a0255bedf34ade FBSDKCoreKit_Basics: 3d78e5fe00504e5c1aed1c48de0654c3a1565d15 FBSDKLoginKit: 9a581053879a1e6fc3fab8ead341c78c6a318255 FBSDKShareKit: c3b14e2aa947fc6dc8d3ccdd52bfe5ddc88049cf Firebase: f13680471b021937f2230ea8503c7809d8c29806 FirebaseABTesting: e6e3c3e0e35813874f571d1b7bdae2aab319dd38 FirebaseAnalytics: 9f382605c5ee412b039212f054bf7a403d9850c1 FirebaseAppCheck: 148fa858b8070710c8f83d3f545b5f1e85d104a4 FirebaseAppCheckInterop: 5da5ce93e8797a215e3f677fb0654b74e736c8b8 FirebaseAuth: c0f93dcc570c9da2bffb576969d793e95c344fbb FirebaseAuthInterop: 2753ef68cb3cd5aefebe0f58082671cede78350f FirebaseCore: fa80ad16a62d52f67274b5b88304c3a318bbf9a4 FirebaseCoreExtension: 8a47811d0b155501559ef05d089518152a0a1677 FirebaseCoreInternal: 910a81992c33715fec9263ca7381d59ab3a750b7 FirebaseCrashlytics: 4b96efb0ce73b38b2a85e8b8bd1bd8f63f09d015 FirebaseDatabase: faa489a42f5f868d23a55dd442d6e2099348458e FirebaseFirestore: 977ccc27a3caa5d68279f209c3b0450f85b9dc5f FirebaseFirestoreInternal: 04b8afa77b4e5b84e86ab5ad985193e9573239fa FirebaseFirestoreSwift: a6692c48a01d2e673c161713fce52cdbc7e0a19b FirebaseInstallations: 91950fe859846fff0fbd296180909dd273103b09 FirebaseMessaging: 88950ba9485052891ebe26f6c43a52bb62248952 FirebasePerformance: bae7778c4448b37f2a75cb72d30c2df7d10ff227 FirebaseRemoteConfig: 9f3935cefecd85d5b312192117f444957de24a75 FirebaseRemoteConfigInterop: b25018791b204c0d78a90e394d6c62d9b1f22da8 FirebaseSessions: c0939656253a1fa0e94ecc266ccf770cc8b33732 FirebaseSharedSwift: 0274086954b1b2d5fd7e829eccc587044d72a4ba FirebaseStorage: 44f4e25073f6fa0d4d8c09f5bec299ee9e4eb985 Gleap: 5a7d30cd0d48d2c61c20dadc23393e50ce3737dc Google-Mobile-Ads-SDK: 301a16c461c331ba34ff4dab40a22ab7c147af61 GoogleAppMeasurement: 686b48c3c895f3c55c70719041913d5d150b74f6 GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a GoogleUserMessagingPlatform: f131fa7978d2ba88d7426702b057c2cc318e6595 GoogleUtilities: c56430aef51a1aa57b25da78c3f8397e522c67b7 GradientView: 61d79cc948bf66f9d453865794ace916c2ba0918 "gRPC-C++": e725ef63c4475d7cdb7e2cf16eb0fde84bd9ee51 gRPC-Core: eee4be35df218649fe66d721a05a7f27a28f069b GTMSessionFetcher: 8000756fc1c19d2e5697b90311f7832d2e33f6cd GTProgressBar: a480283ecb0ada50de16c71e634892826928f640 InputBarAccessoryView: 1d7b0a672b36e370f01f264b3907ef39d03328e3 IQKeyboardManagerSwift: d338c11a896e9f29603443700c4567e32f830c22 KeenClient: 3090c09a45cc456da5dc7cdce13a6507628b7ccb leveldb-library: e8eadf9008a61f9e1dde3978c086d2b6d9b9dc28 mailcore2-ios: 3ff0be2fa553d4da9c11d39c11d51863c768f24f MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406 MessageKit: a1ba0c69ebead94029867853eb44dd05b9b3f453 Mixpanel: 25b7ccefcd20749841db42295c5dba4ed89a805e nanopb: d4d75c12cd1316f4a64e3c6963f879ecd4b5e0d5 PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 PromisesSwift: 9d77319bbe72ebf6d872900551f7eeba9bce2851 PullToRefreshKit: 7cc53e720e69f135cffa1a57784dfb534f0222ab RecaptchaInterop: 7d1a4a01a6b2cb1610a47ef3f85f0c411434cb21 SDWebImage: 40b0b4053e36c660a764958bff99eed16610acbb SDWebImageSwiftUI: 824628d8220906aa101f62b39a7492edd138449d Segment-Amplitude: 5f56556d1ab809ce41b675ff7b31f7516e6d2b97 segment-appsflyer-ios: 5045780f59cb9df4fa1d9e9c2eb0adc6f00721b9 Segment-Firebase: 6d3b82ad1c6e5519bc229d4e403d3f09ab69ee3b Segment-Mixpanel: eef624e8349c9ecec2ac4e96c732bbe1c1c794f7 Spring: 3d113f14575ef79aec9c5f906dfa4f5001c03254 Stripe: f2bde666c4d38f32237145fd1f703ceec0a75c15 StripeApplePay: 89943feba80f78c84b3a2741913fc19f8cb534cd StripeCore: acb607d9f1bab7b8b57dd271f37353aae9e5e803 StripePayments: 6516caea144600b2dbcb953b53b5a534e080340c StripePaymentSheet: dd98d76f204c55aee31c0b8fc8d8917cdf762e0e StripePaymentsUI: 15645d3ab6f140efda33b69d94607e8a813f8951 StripeUICore: c60c85edb5e87ffc0cab05f4c808ca370dfde31c SwiftKeychainWrapper: 807ba1d63c33a7d0613288512399cd1eda1e470c TrueTime: b49551ffafb28a9dee04e51b226f42a416010842 UIViewAppearanceSwift: 8313bfad3f7b7e129a7494b70e9b9b1f170e5b9f Version: de5907f2c5d0f3cf21708db7801d1d5401139486

PODFILE CHECKSUM: a1bd2600fed564c67c78175e4737731cb795c382

COCOAPODS: 1.13.0

paulb777 commented 4 months ago

Thanks for sharing. The Podfile.lock demonstrates the problem. FirebaseCore 10.6.0 is installed, but FirebaseAppCheck requires FirebaseCore 10.18.0. We'll fix in the 10.27.0 release.

In the meantime, a workaround is to run pod update to get the latest FirebaseCore (or specifically update the version of FirebaseCore before running pod install)

kalyanichaudhari03 commented 4 months ago

@paulb777 I have tried solution which you suggested..i have assigned version to FirebaseCore but its giving below error

Analyzing dependencies [!] CocoaPods could not find compatible versions for pod "FirebaseCore": In Podfile: FirebaseAuth was resolved to 10.25.0, which depends on FirebaseCore (~> 10.0)

FirebaseCore (= 10.18.0)

FirebasePerformance was resolved to 10.25.0, which depends on
  FirebaseCore (~> 10.5)

Segment-Firebase was resolved to 2.7.13, which depends on
  Firebase (~> 10.6.0) was resolved to 10.6.0, which depends on
    Firebase/Core (= 10.6.0) was resolved to 10.6.0, which depends on
      Firebase/CoreOnly (= 10.6.0) was resolved to 10.6.0, which depends on
        FirebaseCore (= 10.6.0)

[!] Automatically assigning platform iOS with version 15.0 on target PlayAndEarn because no platform was specified. Please specify a platform for this target in your Podfile. See https://guides.cocoapods.org/syntax/podfile.html#platform.

paulb777 commented 4 months ago

Based on the error message, Segment-Firebase needs to be updated to something newer than 2.7.13, since it is locked to 10.6.0.