Skip to content

Commit

Permalink
feat(analytics, ios): add Podfile toggle to optionally link AdSupport
Browse files Browse the repository at this point in the history
  • Loading branch information
mikehardy committed Feb 21, 2024
1 parent 9e9255a commit 4eb6eb9
Show file tree
Hide file tree
Showing 4 changed files with 49 additions and 40 deletions.
6 changes: 6 additions & 0 deletions packages/analytics/RNFBAnalytics.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,12 @@ Pod::Spec.new do |s|
Pod::UI.puts "#{s.name}: You may set variable `$RNFirebaseAnalyticsWithoutAdIdSupport=true` in Podfile to use analytics without ad ids."
end
s.dependency 'Firebase/Analytics', firebase_sdk_version

# Special pod for on-device conversion
if defined?($RNFirebaseAnalyticsEnableAdSupport) && ($RNFirebaseAnalyticsEnableAdSupport == true)
Pod::UI.puts "#{s.name}: Adding Apple AdSupport.framework dependency for optional analytics features"
s.frameworks = 'AdSupport'
end
end

# Special pod for on-device conversion
Expand Down
5 changes: 4 additions & 1 deletion tests/ios/Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ appPackage = JSON.parse(File.read(File.join('..', 'node_modules', '@react-native
$FirebaseSDKVersion = appPackage['sdkVersions']['ios']['firebase']
# $FirebaseSDKVersion = '10.17.0' # https://firebase.google.com/support/release-notes/ios
Pod::UI.puts "react-native-firebase/tests: Using Firebase SDK version '#{$FirebaseSDKVersion}'"
$RNFirebaseAsStaticFramework = true # toggle this to true (and set 'use_frameworks!' below to test static frameworks)
$RNFirebaseAnalyticsEnableAdSupport = true # toggle this to true (and set 'use_frameworks!' below to test static frameworks)

# Toggle this to true for the no-ad-tracking Analytics subspec. Useful at minimum for Kids category apps.
# See: https://firebase.google.com/support/release-notes/ios#analytics - requires firebase-ios-sdk 7.11.0+
Expand All @@ -19,6 +19,9 @@ $RNFirebaseAsStaticFramework = true # toggle this to true (and set 'use_framewor
# Toggle this to true if you want to include support for on device conversion measurement APIs
$RNFirebaseAnalyticsGoogleAppMeasurementOnDeviceConversion = true

# Toggle this to true if you want to include optional support for extended analytics features
$RNFirebaseAnalyticsEnableAdSupport = true

# react-native 0.73 is currently iOS 13.4 as a minimum
min_ios_version_supported = 13.4

Expand Down
76 changes: 38 additions & 38 deletions tests/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -696,7 +696,7 @@ PODS:
- Firebase/Storage (10.20.0):
- Firebase/CoreOnly
- FirebaseStorage (~> 10.20.0)
- FirebaseABTesting (10.20.0):
- FirebaseABTesting (10.21.0):
- FirebaseCore (~> 10.0)
- FirebaseAnalytics (10.20.0):
- FirebaseAnalytics/AdIdSupport (= 10.20.0)
Expand All @@ -722,7 +722,7 @@ PODS:
- FirebaseCore (~> 10.0)
- GoogleUtilities/Environment (~> 7.8)
- PromisesObjC (~> 2.1)
- FirebaseAppCheckInterop (10.20.0)
- FirebaseAppCheckInterop (10.21.0)
- FirebaseAppDistribution (10.20.0-beta):
- FirebaseCore (~> 10.0)
- FirebaseInstallations (~> 10.0)
Expand All @@ -735,14 +735,14 @@ PODS:
- GoogleUtilities/Environment (~> 7.8)
- GTMSessionFetcher/Core (< 4.0, >= 2.1)
- RecaptchaInterop (~> 100.0)
- FirebaseAuthInterop (10.20.0)
- FirebaseAuthInterop (10.21.0)
- FirebaseCore (10.20.0):
- FirebaseCoreInternal (~> 10.0)
- GoogleUtilities/Environment (~> 7.12)
- GoogleUtilities/Logger (~> 7.12)
- FirebaseCoreExtension (10.20.0):
- FirebaseCore (~> 10.0)
- FirebaseCoreInternal (10.20.0):
- FirebaseCoreInternal (10.21.0):
- "GoogleUtilities/NSData+zlib (~> 7.8)"
- FirebaseCrashlytics (10.20.0):
- FirebaseCore (~> 10.5)
Expand All @@ -764,7 +764,7 @@ PODS:
- FirebaseCoreExtension (~> 10.0)
- FirebaseFirestoreInternal (~> 10.17)
- FirebaseSharedSwift (~> 10.0)
- FirebaseFirestoreInternal (10.20.0):
- FirebaseFirestoreInternal (10.21.0):
- abseil/algorithm (~> 1.20220623.0)
- abseil/base (~> 1.20220623.0)
- abseil/container/flat_hash_map (~> 1.20220623.0)
Expand Down Expand Up @@ -806,7 +806,7 @@ PODS:
- GoogleUtilities/Reachability (~> 7.8)
- GoogleUtilities/UserDefaults (~> 7.8)
- nanopb (< 2.30910.0, >= 2.30908.0)
- FirebaseMessagingInterop (10.20.0)
- FirebaseMessagingInterop (10.21.0)
- FirebasePerformance (10.20.0):
- FirebaseCore (~> 10.5)
- FirebaseInstallations (~> 10.0)
Expand All @@ -824,15 +824,15 @@ PODS:
- FirebaseSharedSwift (~> 10.0)
- GoogleUtilities/Environment (~> 7.8)
- "GoogleUtilities/NSData+zlib (~> 7.8)"
- FirebaseSessions (10.20.0):
- FirebaseSessions (10.21.0):
- FirebaseCore (~> 10.5)
- FirebaseCoreExtension (~> 10.0)
- FirebaseInstallations (~> 10.0)
- GoogleDataTransport (~> 9.2)
- GoogleUtilities/Environment (~> 7.10)
- nanopb (< 2.30910.0, >= 2.30908.0)
- PromisesSwift (~> 2.1)
- FirebaseSharedSwift (10.20.0)
- FirebaseSharedSwift (10.21.0)
- FirebaseStorage (10.20.0):
- FirebaseAppCheckInterop (~> 10.0)
- FirebaseAuthInterop (~> 10.0)
Expand Down Expand Up @@ -947,13 +947,13 @@ PODS:
- BoringSSL-GRPC (= 0.0.24)
- gRPC-Core/Interface (= 1.49.1)
- gRPC-Core/Interface (1.49.1)
- GTMSessionFetcher/Core (3.2.0)
- GTMSessionFetcher/Core (3.3.1)
- hermes-engine (0.73.2):
- hermes-engine/Pre-built (= 0.73.2)
- hermes-engine/Pre-built (0.73.2)
- Jet (0.8.3):
- React-Core
- leveldb-library (1.22.2)
- leveldb-library (1.22.3)
- libevent (2.1.12)
- nanopb (2.30909.1):
- nanopb/decode (= 2.30909.1)
Expand Down Expand Up @@ -2343,30 +2343,30 @@ SPEC CHECKSUMS:
FBLazyVector: fbc4957d9aa695250b55d879c1d86f79d7e69ab4
FBReactNativeSpec: 86de768f89901ef6ed3207cd686362189d64ac88
Firebase: 10c8cb12fb7ad2ae0c09ffc86cd9c1ab392a0031
FirebaseABTesting: 1d5d49804bcfc5fa782bc2491a8c1364e2cf7241
FirebaseABTesting: 40774deef367dcc7b736b6c26dd59ce0fab42f41
FirebaseAnalytics: a2731bf3670747ce8f65368b118d18aa8e368246
FirebaseAppCheck: 401b26f036fcbe0ffe40bdc1c831ab05955c1b9f
FirebaseAppCheckInterop: e81bdb1cdb82f8e0cef353ba5018a8402682032c
FirebaseAppCheckInterop: 69fc7d8f6a1cbfa973efb8d1723651de30d12525
FirebaseAppDistribution: a9cc7b0b1ecf7350c10c95a867041e8440e86d0d
FirebaseAuth: 9c5c400d2c3055d8ae3a0284944c86fa95d48dac
FirebaseAuthInterop: 6142981334978f7942ff0e8a6f8966c3b3c8ff37
FirebaseAuthInterop: b4161d3e99b05d2d528d6ee2759bc55a01976eba
FirebaseCore: 28045c1560a2600d284b9c45a904fe322dc890b6
FirebaseCoreExtension: 0659f035b88c5a7a15a9763c48c2e6ca8c0a2977
FirebaseCoreInternal: efeeb171ac02d623bdaefe121539939821e10811
FirebaseCoreInternal: 43c1788eaeee9d1b97caaa751af567ce11010d00
FirebaseCrashlytics: 81530595edb6d99f1918f723a6c33766a24a4c86
FirebaseDatabase: 7e838abb62ac2e1a1c792cbeb51df3c4b6607f54
FirebaseDynamicLinks: 61a82d43b81cd74a3cdbb1d65f07fb0241aaa553
FirebaseFirestore: 21be9ea244830f6cac15464550c2975c43f9dffc
FirebaseFirestoreInternal: 0dc0762afd68192e9d45c31d3dd3017accc84333
FirebaseFirestoreInternal: 7ac1e0c5b4e75aeb898dfe4b1d6d77abbac9eca3
FirebaseFunctions: 2b6ec69b93c49347025190ccb0a27cdbfd1cad66
FirebaseInAppMessaging: 1a9bba3e245cb3ff3fe96e828de2932208d6fc65
FirebaseInstallations: 558b1da7d65afeb996fd5c814332f013234ece4e
FirebaseMessaging: 06c414a21b122396a26847c523d5c370f8325df5
FirebaseMessagingInterop: ffbbd63321f6a1e21dc724d382c22805c95671a0
FirebaseMessagingInterop: bd03eed9a75b75d882bc685f29dcdfcae29e3279
FirebasePerformance: 085f0123064068c43f14fcf3536b57e30449e7cc
FirebaseRemoteConfig: b873a427a48159082361343a85649eed3f5377ea
FirebaseSessions: 2f348975f6d1c139231c180e12194161da2e0cd6
FirebaseSharedSwift: 2fbf73618288b7a36b2014b957745dcdd781389e
FirebaseSessions: 80c2bbdd28166267b3d132debe5f7531efdb00bc
FirebaseSharedSwift: 19b3f709993d6fa1d84941d41c01e3c4c11eab93
FirebaseStorage: 8505bae8ac6662474b5b50e07759fb2765c15746
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: c5d68082e772fa1c511173d6b30a9de2c05a69a2
Expand All @@ -2376,10 +2376,10 @@ SPEC CHECKSUMS:
GoogleUtilities: 0759d1a57ebb953965c2dfe0ba4c82e95ccc2e34
"gRPC-C++": 2df8cba576898bdacd29f0266d5236fa0e26ba6a
gRPC-Core: a21a60aefc08c68c247b439a9ef97174b0c54f96
GTMSessionFetcher: 41b9ef0b4c08a6db4b7eb51a21ae5183ec99a2c8
GTMSessionFetcher: 8a1b34ad97ebe6f909fb8b9b77fba99943007556
hermes-engine: b361c9ef5ef3cda53f66e195599b47e1f84ffa35
Jet: 115c08882ff1bd917e1aa32af128641169d04ffd
leveldb-library: f03246171cce0484482ec291f88b6d563699ee06
leveldb-library: e74c27d8fbd22854db7cb467968a0b8aa1db7126
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
nanopb: d4d75c12cd1316f4a64e3c6963f879ecd4b5e0d5
PromisesObjC: c50d2056b5253dadbd6c2bea79b0674bd5a52fa4
Expand Down Expand Up @@ -2427,26 +2427,26 @@ SPEC CHECKSUMS:
ReactCommon: d4860bcbe85d89bb261ba28948f027325bb577dc
RecaptchaInterop: 7d1a4a01a6b2cb1610a47ef3f85f0c411434cb21
RNDeviceInfo: db5c64a060e66e5db3102d041ebe3ef307a85120
RNFBAnalytics: 65d320f7746451af80209cf4521eacf5f0ad8802
RNFBApp: a4f5b074984cf612e4c97d68b42be690c59e2638
RNFBAppCheck: 6eec0ff0d6be7a2425e62017ceb89887f6f833df
RNFBAppDistribution: 9ae6d0f02d6c871f8277118fb81fc11e7dcb2d12
RNFBAuth: bd014d486a51b5414b642dd155763c5873a2b3e4
RNFBCrashlytics: a88c315ab5b6cb2b8a3f56390cd63b2dfd5ec05a
RNFBDatabase: b075843423e2f03b19a8b77c3a861223868ccbeb
RNFBDynamicLinks: 77cccfac365229b763b6749949f2fac32d2ee87c
RNFBFirestore: 2ed2073fc9c4d8951f267d1cbadc3b384e948141
RNFBFunctions: 06cf5b16b308a1560aa5003fc679fb8a638dd725
RNFBInAppMessaging: 53c5b03c7e73d5d07bed110b8aa5e3436f5aea20
RNFBInstallations: a86ca4f4312e4d7a2625c61fa3b3162da60b8410
RNFBMessaging: 1e7415390ae579c5949505a0709686a2de8a47e5
RNFBML: 1d9637b717778133a057ddf86d1915d016d9aabf
RNFBPerf: 4a53fe731cc6b6ef1edb3117484b10836c9a5f3c
RNFBRemoteConfig: b7b4133b3d4dd16baeffa9780f87830b5c7a6431
RNFBStorage: 4d29b7d52745f914fd52d450187265a579579973
RNFBAnalytics: b3b33bbc1d77d233bbfd341fb6b1a454fa56bb63
RNFBApp: 5810d39f89d38272f29d9908cb19ef641922c081
RNFBAppCheck: 664854b01bd0c9d6163cd4d2d270b510199d999d
RNFBAppDistribution: 5b670ab9d67e02abfd7a89830e83ada99b5e2ab5
RNFBAuth: 22be3e62ac7efaeff8edddd4de93d288382ecdc7
RNFBCrashlytics: 56e4773cf2d3710dd1e42d2f38d3667589d743f5
RNFBDatabase: 0aad687f981c11fb8a27643980ad55753cb34aa8
RNFBDynamicLinks: 27ba525db1b10dac3e6e24cf5dce77a7c0d9cf56
RNFBFirestore: 2b5caf7dbf7aa9aba0d34b562aa1adedad907e5a
RNFBFunctions: 5aecbad402b9065f73ba8aa14ae5f74d20c1e1ec
RNFBInAppMessaging: 10338c9dd924851e187f0695eb874840c6894a79
RNFBInstallations: 21d10b21a820adcdf92c5ee63b4e6dd50d9bd654
RNFBMessaging: 8863c0206cc1a5577678eac6c1ec2b2965bd8e52
RNFBML: 0690082df5ea844bb1c50de9147ba58a49825759
RNFBPerf: c27202807870b043cc16d37e56465f42124ab712
RNFBRemoteConfig: 3fa1f6239f8b5e2f91c60ae07a37b73146487881
RNFBStorage: 6cb106fac789e6981dcff0fa2b1ff7214dd0ef24
SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17
Yoga: 13c8ef87792450193e117976337b8527b49e8c03

PODFILE CHECKSUM: fd2f683bc28d2fe2477257935924fd91d3c54766
PODFILE CHECKSUM: 116cc4e9d1ef07a0b698eff4bacd90df81838371

COCOAPODS: 1.14.3
Loading

0 comments on commit 4eb6eb9

Please sign in to comment.