Closed
Description
Description
I upgraded my app to use Firebase 11.14.0 using swift package manager. The app crashes upon launch with the following error:
*** Terminating app due to uncaught exception 'MeasurementDeprecatedOnDeviceConversionException', reason: 'GoogleAppMeasurementOnDeviceConversion (deprecated) framework and GoogleAdsOnDeviceConversion framework are both linked into the app. Remove the GoogleAppMeasurementOnDeviceConversion (deprecated) framework, which is no longer recommended for new development.'
*** First throw call stack:
(0x18adab21c 0x188245abc 0x18ae09ea0 0x102f94584 0x102fae064 0x102fcef70 0x102fa4548 0x102fa4484 0x18acfdd90 0x18aca14f4 0x18aca2c3c 0x1d7e81454 0x18d6b5274 0x18d680a28 0x18f7c57a4 0x18f4cb01c 0x18f4caed0 0x107d21cf4 0x107d2228c 0x1b1b77f08)
terminating due to uncaught exception of type NSException
If I manually remove FirebaseAnalyticsOnDeviceConversion
from my target linked libraries the crash is not happening. However, as soon as I close the Xcode project and reopen it, the FirebaseAnalyticsOnDeviceConversion
framework dependency is automatically added back.
Reproducing the issue
Update from Firebase 11.13.0 to 11.14.0 using Swift Package Manager and run the app.
Firebase SDK Version
11.14.0
Xcode Version
16.4
Installation Method
Swift Package Manager
Firebase Product(s)
Crashlytics, Analytics, Functions, Remote Config, DynamicLinks, Authentication, Database, Messaging
Targeted Platforms
iOS
Relevant Log Output
11.14.0 - [FirebaseCore][I-COR000001] Configuring the default app.
11.14.0 - [FirebaseCore][I-COR000033] Data Collection flag is not set.
11.14.0 - [FirebaseAnalytics][I-ACS024000] Debug mode is on
11.14.0 - [GULReachability][I-REA902003] Monitoring the network status
11.14.0 - [FirebaseAnalytics][I-ACS023007] Analytics v.11.14.0 started
11.14.0 - [FirebaseAnalytics][I-ACS023008] To disable debug logging set the following application argument: -noFIRAnalyticsDebugEnabled (see http://goo.gl/RfcP7r)
11.14.0 - [FirebaseAnalytics][I-ACS023009] Debug logging enabled
11.14.0 - [FirebaseAnalytics][I-ACS023207] To enable verbose logging set the following application argument: -FIRAnalyticsVerboseLoggingEnabled (see http://goo.gl/RfcP7r)
11.14.0 - [GULReachability][I-REA902003] Monitoring the network status
11.14.0 - [FirebaseAnalytics][I-ACS025036] App Delegate Proxy is disabled
11.14.0 - [FirebaseAnalytics][I-ACS044000] GoogleAppMeasurementIdentitySupport dependency is linked.
11.14.0 - [FirebaseAnalytics][I-ACS044001] The AdSupport Framework is linked.
11.14.0 - [FirebaseInstallations][I-FIS002000] -[FIRInstallationsIDController createGetInstallationItemPromise], appName: __FIRAPP_DEFAULT
11.14.0 - [FirebaseMessaging][I-FCM043000] Info is not found in Keychain. OSStatus: -25300. Keychain query: (REDACTED)
11.14.0 - [FirebaseMessaging][I-FCM033009] App reset detected but no valid checkin auth preferences found. Will not delete server token registrations.
11.14.0 - [FirebaseMessaging][I-FCM002000] FIRMessaging library version 11.14.0
11.14.0 - [GULReachability][I-REA902003] Monitoring the network status
11.14.0 - [FirebaseAnalytics][I-ACS002002] APMExperimentAlarm scheduled to fire in approx. (s): 12148.62024784088
11.14.0 - [FirebaseSessions][I-SES000000] Version 11.14.0. Expecting subscriptions from: [Crashlytics]
11.14.0 - [GoogleUtilities/AppDelegateSwizzler][I-SWZ001011] App Delegate Proxy is disabled.
[Firebase/Crashlytics] Version 11.14.0
11.14.0 - [FirebaseCrashlytics][I-CLS000000] [Crashlytics] Running on iPhone11,8, 18.5.0 (22F76)
11.14.0 - [FirebaseCrashlytics][I-CLS000000] Registering Sessions SDK subscription for session data
11.14.0 - [FirebaseSessions][I-SES000000] Registering Sessions SDK subscriber with name: Crashlytics, data collection enabled: false
11.14.0 - [FirebaseCrashlytics][I-CLS000000] Session ID changed: 28a1ee6940bc4109a6a29df2fb3667e7
11.14.0 - [FirebaseCrashlytics][I-CLS000000] Root: (REDACTED)
11.14.0 - [FirebaseCrashlytics][I-CLS000000] Automatic data collection is disabled.
11.14.0 - [FirebaseCrashlytics][I-CLS000000] [Crashlytics:Crash] 1 unsent reports are available. Waiting for send/deleteUnsentReports to be called.
11.14.0 - [FirebaseCrashlytics][I-CLS000000] Registering RemoteConfig SDK subscription for rollouts data
11.14.0 - [FirebaseRemoteConfig][I-RCN000062] Loading database at path /var/mobile/Containers/Data/Application/E90B0898-08A4-48C1-88C6-ABB77DEA1A53/Library/Application Support/Google/RemoteConfig/RemoteConfig.sqlite3
11.14.0 - [FirebaseRemoteConfig][I-RCN000069] Send rollouts state notification with name FIRRolloutsStateDidChangeNotification to RemoteConfigInterop.
11.14.0 - [FirebaseCore][I-COR000002] Configuring app named (REDACTED)
11.14.0 - [FirebaseAnalytics][I-ACS800023] No pending snapshot to activate. SDK name: app_measurement
11.14.0 - [FirebaseAnalytics][I-ACS029014] Successfully parsed a configuration. Version: 1748523766827229
11.14.0 - [FirebaseAnalytics][I-ACS023016] Analytics is ready to receive events
11.14.0 - [FirebaseAnalytics][I-ACS023253] GoogleAppMeasurementOnDeviceConversion dependency is linked. On-device conversion measurement is ready to initiate.
11.14.0 - [GULReachability][I-REA902003] Monitoring the network status
11.14.0 - [FirebaseAnalytics][I-ACS023278] Conversion service GoogleAdsOnDeviceConversion framework is linked
11.14.0 - [FirebaseAnalytics][I-ACS023280] Conversion service will not attempt a fetch
11.14.0 - [FirebaseRemoteConfig][I-RCN000039] Starting requesting token.
11.14.0 - [FirebaseInstallations][I-FIS002001] -[FIRInstallationsIDController installationWithValidAuthTokenForcingRefresh:0], appName: __FIRAPP_DEFAULT
11.14.0 - [FirebaseRemoteConfig][I-RCN000067] Successfully set configSettings. Minimum Fetch Interval:86400.000000, Fetch timeout:60.000000
11.14.0 - [FirebaseRemoteConfig][I-RCN000051] Returning cached data.
11.14.0 - [FirebaseAnalytics][I-ACS032014] AdServices framework is not linked. Search Ad Attribution Reporter is disabled.
11.14.0 - [FirebaseAnalytics][I-ACS023012] Analytics collection enabled
11.14.0 - [FirebaseRemoteConfig][I-RCN000039] Starting requesting token.
11.14.0 - [GULReachability][I-REA902004] Network status has changed. Code:2, status:Connected
11.14.0 - [GULReachability][I-REA902004] Network status has changed. Code:2, status:Connected
11.14.0 - [GULReachability][I-REA902004] Network status has changed. Code:2, status:Connected
11.14.0 - [GULReachability][I-REA902004] Network status has changed. Code:2, status:Connected
11.14.0 - [FirebaseAnalytics][I-ACS002002] Measurement timer scheduled to fire in approx. (s): -199.5648949146271
11.14.0 - [FirebaseAnalytics][I-ACS002001] Measurement timer fired
11.14.0 - [FirebaseAnalytics][I-ACS002003] Measurement timer canceled
11.14.0 - [FirebaseAnalytics][I-ACS012018] Saving bundle. size (bytes): 521
11.14.0 - [FirebaseAnalytics][I-ACS023116] Bundle added to the upload queue. BundleID, timestamp (ms): 12, 1749199494299
11.14.0 - [FirebaseAuth][I-AUT000002] Token auto-refresh enabled.
11.14.0 - [FirebaseAuth][I-AUT000004] Token auto-refresh scheduled in 17:18 for the new token.
11.14.0 - [FirebaseAuth][I-AUT000017] Has valid access token. Estimated expiration date:2025-06-06 09:10:33 +0000, current date: 2025-06-06 08:48:15 +0000
11.14.0 - [FirebaseAuth][I-AUT000017] Has valid access token. Estimated expiration date:2025-06-06 09:10:33 +0000, current date: 2025-06-06 08:48:15 +0000
*** Terminating app due to uncaught exception 'MeasurementDeprecatedOnDeviceConversionException', reason: 'GoogleAppMeasurementOnDeviceConversion (deprecated) framework and GoogleAdsOnDeviceConversion framework are both linked into the app. Remove the GoogleAppMeasurementOnDeviceConversion (deprecated) framework, which is no longer recommended for new development.'
*** First throw call stack:
(0x18adab21c 0x188245abc 0x18ae09ea0 0x10363c584 0x103656064 0x103676f70 0x10364c548 0x10364c484 0x18acfdd90 0x18aca14f4 0x18aca2c3c 0x1d7e81454 0x18d6b5274 0x18d680a28 0x18f7c57a4 0x18f4cb01c 0x18f4caed0 0x10837ed2c 0x10837f2c4 0x1b1b77f08)
terminating due to uncaught exception of type NSException
If using Swift Package Manager, the project's Package.resolved
Expand Package.resolved
snippet
{
"originHash" : "9ccea486a6e6c9e79784ec01a13258ae5d2d8d42192429a7d6e6e8776cf69dc0",
"pins" : [
{
"identity" : "abseil-cpp-binary",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/abseil-cpp-binary.git",
"state" : {
"revision" : "bbe8b69694d7873315fd3a4ad41efe043e1c07c5",
"version" : "1.2024072200.0"
}
},
{
"identity" : "app-check",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/app-check.git",
"state" : {
"revision" : "61b85103a1aeed8218f17c794687781505fbbef5",
"version" : "11.2.0"
}
},
{
"identity" : "aws-crt-swift",
"kind" : "remoteSourceControl",
"location" : "https://github.com/awslabs/aws-crt-swift",
"state" : {
"revision" : "74d970dde8a0d6b2fe1d8374767ca9793088ce2c",
"version" : "0.48.0"
}
},
{
"identity" : "aws-sdk-swift",
"kind" : "remoteSourceControl",
"location" : "https://github.com/awslabs/aws-sdk-swift",
"state" : {
"revision" : "efcd14735e64271a24f7f5a7b5ff2a4fa9f3275e",
"version" : "1.2.57"
}
},
{
"identity" : "blueconnect",
"kind" : "remoteSourceControl",
"location" : "https://github.com/danielepantaleone/BlueConnect",
"state" : {
"revision" : "b08576d63506c2f91d6902dc258f2fb8c4d5d55c",
"version" : "1.4.5"
}
},
{
"identity" : "collectionconcurrencykit",
"kind" : "remoteSourceControl",
"location" : "https://github.com/JohnSundell/CollectionConcurrencyKit.git",
"state" : {
"revision" : "b4f23e24b5a1bff301efc5e70871083ca029ff95",
"version" : "0.2.0"
}
},
{
"identity" : "cryptoswift",
"kind" : "remoteSourceControl",
"location" : "https://github.com/krzyzanowskim/CryptoSwift.git",
"state" : {
"revision" : "729e01bc9b9dab466ac85f21fb9ee2bc1c61b258",
"version" : "1.8.4"
}
},
{
"identity" : "csv.swift",
"kind" : "remoteSourceControl",
"location" : "https://github.com/yaslab/CSV.swift.git",
"state" : {
"revision" : "b4371dc833ba22ab6ead90fb63d267c3cf9ce773",
"version" : "2.5.2"
}
},
{
"identity" : "facebook-ios-sdk",
"kind" : "remoteSourceControl",
"location" : "https://github.com/facebook/facebook-ios-sdk.git",
"state" : {
"revision" : "b28dde427715b45a26ebebf697929f4a81b15e04",
"version" : "18.0.0"
}
},
{
"identity" : "factory",
"kind" : "remoteSourceControl",
"location" : "https://github.com/hmlongco/Factory.git",
"state" : {
"revision" : "ccc898f21992ebc130bc04cc197460a5ae230bcf",
"version" : "2.5.3"
}
},
{
"identity" : "google-ads-on-device-conversion-ios-sdk",
"kind" : "remoteSourceControl",
"location" : "https://github.com/googleads/google-ads-on-device-conversion-ios-sdk",
"state" : {
"revision" : "70a7857886f065a40486a7607268781c49db04ae",
"version" : "2.0.0"
}
},
{
"identity" : "googleappmeasurement",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/GoogleAppMeasurement.git",
"state" : {
"revision" : "406f72d0d5e9445fd1cf782db3e9e338cee2bed4",
"version" : "11.14.0"
}
},
{
"identity" : "googledatatransport",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/GoogleDataTransport.git",
"state" : {
"revision" : "617af071af9aa1d6a091d59a202910ac482128f9",
"version" : "10.1.0"
}
},
{
"identity" : "googleutilities",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/GoogleUtilities.git",
"state" : {
"revision" : "60da361632d0de02786f709bdc0c4df340f7613e",
"version" : "8.1.0"
}
},
{
"identity" : "grdb.swift",
"kind" : "remoteSourceControl",
"location" : "https://github.com/groue/GRDB.swift.git",
"state" : {
"revision" : "2cf6c756e1e5ef6901ebae16576a7e4e4b834622",
"version" : "6.29.3"
}
},
{
"identity" : "grpc-binary",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/grpc-binary.git",
"state" : {
"revision" : "cc0001a0cf963aa40501d9c2b181e7fc9fd8ec71",
"version" : "1.69.0"
}
},
{
"identity" : "gtm-session-fetcher",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/gtm-session-fetcher.git",
"state" : {
"revision" : "4d70340d55d7d07cc2fdf8e8125c4c126c1d5f35",
"version" : "4.4.0"
}
},
{
"identity" : "interop-ios-for-google-sdks",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/interop-ios-for-google-sdks.git",
"state" : {
"revision" : "040d087ac2267d2ddd4cca36c757d1c6a05fdbfe",
"version" : "101.0.0"
}
},
{
"identity" : "leveldb",
"kind" : "remoteSourceControl",
"location" : "https://github.com/firebase/leveldb.git",
"state" : {
"revision" : "a0bc79961d7be727d258d33d5a6b2f1023270ba1",
"version" : "1.22.5"
}
},
{
"identity" : "lottie-spm",
"kind" : "remoteSourceControl",
"location" : "https://github.com/airbnb/lottie-spm.git",
"state" : {
"revision" : "04f2fd18cc9404a0a0917265a449002674f24ec9",
"version" : "4.5.2"
}
},
{
"identity" : "nanopb",
"kind" : "remoteSourceControl",
"location" : "https://github.com/firebase/nanopb.git",
"state" : {
"revision" : "b7e1104502eca3a213b46303391ca4d3bc8ddec1",
"version" : "2.30910.0"
}
},
{
"identity" : "navigationbackport",
"kind" : "remoteSourceControl",
"location" : "https://github.com/johnpatrickmorgan/NavigationBackport",
"state" : {
"revision" : "5a966a6010dcc6575a1931ca577b8ab19008166d",
"version" : "0.11.3"
}
},
{
"identity" : "promises",
"kind" : "remoteSourceControl",
"location" : "https://github.com/google/promises.git",
"state" : {
"revision" : "540318ecedd63d883069ae7f1ed811a2df00b6ac",
"version" : "2.4.0"
}
},
{
"identity" : "smithy-swift",
"kind" : "remoteSourceControl",
"location" : "https://github.com/smithy-lang/smithy-swift",
"state" : {
"revision" : "755367ae4e10004f8b5a94fbfdf3f638a1f225bc",
"version" : "0.125.0"
}
},
{
"identity" : "sourcekitten",
"kind" : "remoteSourceControl",
"location" : "https://github.com/jpsim/SourceKitten.git",
"state" : {
"revision" : "eb6656ed26bdef967ad8d07c27e2eab34dc582f2",
"version" : "0.37.0"
}
},
{
"identity" : "swift-argument-parser",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-argument-parser.git",
"state" : {
"revision" : "41982a3656a71c768319979febd796c6fd111d5c",
"version" : "1.5.0"
}
},
{
"identity" : "swift-log",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-log.git",
"state" : {
"revision" : "3d8596ed08bd13520157f0355e35caed215ffbfa",
"version" : "1.6.3"
}
},
{
"identity" : "swift-protobuf",
"kind" : "remoteSourceControl",
"location" : "https://github.com/apple/swift-protobuf.git",
"state" : {
"revision" : "d72aed98f8253ec1aa9ea1141e28150f408cf17f",
"version" : "1.29.0"
}
},
{
"identity" : "swift-syntax",
"kind" : "remoteSourceControl",
"location" : "https://github.com/swiftlang/swift-syntax.git",
"state" : {
"revision" : "1103c45ece4f7fe160b8f75b4ea1ee2e5fac1841",
"version" : "601.0.0"
}
},
{
"identity" : "swiftlint",
"kind" : "remoteSourceControl",
"location" : "https://github.com/realm/SwiftLint.git",
"state" : {
"revision" : "ce8ca6a6e7e4038235af3d7319a872e6b87e4137",
"version" : "0.59.0"
}
},
{
"identity" : "swiftui-introspect",
"kind" : "remoteSourceControl",
"location" : "https://github.com/siteline/swiftui-introspect.git",
"state" : {
"revision" : "807f73ce09a9b9723f12385e592b4e0aaebd3336",
"version" : "1.3.0"
}
},
{
"identity" : "swiftytexttable",
"kind" : "remoteSourceControl",
"location" : "https://github.com/scottrhoyt/SwiftyTextTable.git",
"state" : {
"revision" : "c6df6cf533d120716bff38f8ff9885e1ce2a4ac3",
"version" : "0.9.0"
}
},
{
"identity" : "swxmlhash",
"kind" : "remoteSourceControl",
"location" : "https://github.com/drmohundro/SWXMLHash.git",
"state" : {
"revision" : "a853604c9e9a83ad9954c7e3d2a565273982471f",
"version" : "7.0.2"
}
},
{
"identity" : "yams",
"kind" : "remoteSourceControl",
"location" : "https://github.com/jpsim/Yams.git",
"state" : {
"revision" : "b4b8042411dc7bbb696300a34a4bf3ba1b7ad19b",
"version" : "5.3.1"
}
},
{
"identity" : "zipfoundation",
"kind" : "remoteSourceControl",
"location" : "https://github.com/weichsel/ZIPFoundation.git",
"state" : {
"revision" : "02b6abe5f6eef7e3cbd5f247c5cc24e246efcfe0",
"version" : "0.9.19"
}
}
],
"version" : 3
}