question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[Bare] expo-ads-admob is using Google-Mobile-Ads-SDK (= 7.69.0) which conflicts with @react-native-firebase/analytics

See original GitHub issue

Summary

With bare app, when running pod install , it generates the following error :

[!] CocoaPods could not find compatible versions for pod "GoogleAppMeasurement":
  In Podfile:
    EXAdsAdMob (from `../node_modules/expo-ads-admob/ios`) was resolved to 10.0.4, which depends on
      Google-Mobile-Ads-SDK (= 7.69.0) was resolved to 7.69.0, which depends on
        GoogleAppMeasurement (~> 7.0)

    RNFBAnalytics (from `../node_modules/@react-native-firebase/analytics`) was resolved to 12.0.0, which depends on
      Firebase/Analytics (= 8.0.0) was resolved to 8.0.0, which depends on
        Firebase/Core (= 8.0.0) was resolved to 8.0.0, which depends on
          FirebaseAnalytics (~> 8.0.0) was resolved to 8.0.0, which depends on
            FirebaseAnalytics/AdIdSupport (= 8.0.0) was resolved to 8.0.0, which depends on
              GoogleAppMeasurement (= 8.0.0)

Currently trying to find which version of FirebaseAnalytics/AdIdSupport would still use GoogleAppMeasurement (~> 7.0), but it seems to be easier to try to fix expo-ads-mob.

This issue blocks the publication process of the app on the store.

Would it be possible to update dependencies on Google-Mobile-Ads-SDK (as it was already done with https://github.com/expo/expo/issues/11941) : 8.6.0 will have GoogleAppMeasurement (8.0) dependency.

I’ve changed “7.69.0” in node_modules/expo-ads-mob/ios/ExAdsAdMob.podspec by “8.6.0”

s.dependency 'Google-Mobile-Ads-SDK', "8.6.0"

And now pod install works fine.

....
Installing EXAdsAdMob (10.0.4)
....
Installing GoogleAppMeasurement (8.0.0)
....
Pod installation complete! There are 76 dependencies from the Podfile and 88 total pods installed.

But file such as EXAdsAdMobInterstitial.m must be modified too, unfortunately this is outside my knowledge :

@implementation EXAdsAdMobInterstitial {
  GADInterstitial  *_interstitial;    ------> Unknown type name 'GADInterstitial'; did you mean 'GADInterstitialAd'?

in EXAdsAdMobInterstitial.h

#import <GoogleMobileAds/GoogleMobileAds.h>

@interface EXAdsAdMobInterstitial : UMExportedModule <UMEventEmitter, UMModuleRegistryConsumer, GADInterstitialDelegate>.   --->> Cannot find protocol declaration for 'GADInterstitialDelegate'

Managed or bare workflow? If you have ios/ or android/ directories in your project, the answer is bare!

bare

What platform(s) does this occur on?

iOS

SDK Version (managed workflow only)

41

Environment

  Expo CLI 4.5.2 environment info:
    System:
      OS: macOS 11.3.1
      Shell: 5.8 - /bin/zsh
    Binaries:
      Node: 12.22.1 - /usr/local/bin/node
      Yarn: 1.22.5 - /usr/local/bin/yarn
      npm: 6.14.12 - /usr/local/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    Managers:
      CocoaPods: 1.10.1 - /usr/local/bin/pod
    SDKs:
      iOS SDK:
        Platforms: iOS 14.5, DriverKit 20.4, macOS 11.3, tvOS 14.5, watchOS 7.4
      Android SDK:
        API Levels: 23, 25, 26, 27, 28, 29
        Build Tools: 28.0.3, 29.0.2, 30.0.2
        System Images: android-25 | Google Play Intel x86 Atom, android-27 | Google Play Intel x86 Atom, android-28 | Google Play Intel x86 Atom, android-28 | Google Play Intel x86 Atom_64, android-29 | Google APIs Intel x86 Atom
    IDEs:
      Xcode: 12.5/12E262 - /usr/bin/xcodebuild
    npmPackages:
      expo: ^41.0.1 => 41.0.1
      react: 16.13.1 => 16.13.1
      react-dom: 16.13.1 => 16.13.1
      react-native: ~0.63.4 => 0.63.4
      react-native-web: ^0.16.3 => 0.16.3
    npmGlobalPackages:
      expo-cli: 4.4.7
    Expo Workflow: bare

Reproducible demo or steps to reproduce from a blank project

this in not code related juste the package.json :

"expo": "^41.0.1",
"expo-ads-admob": "~10.0.4",
"@react-native-firebase/analytics": "^12.0.0",
"@react-native-firebase/app": "^12.0.0",
"@react-native-firebase/messaging": "^12.0.0",

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Reactions:2
  • Comments:10 (5 by maintainers)

github_iconTop GitHub Comments

3reactions
cruzachcommented, Jul 28, 2021

That issue isn’t very clear to me, looks like just an improper use of the API (passing in the wrong # of args)

We can try to prioritize this for our next release

2reactions
dpyeatescommented, Jul 14, 2021

+1

this is blocking usage of expo-ads-admob with the latest Firebase at the moment

Read more comments on GitHub >

github_iconTop Results From Across the Web

expo-ads-admob is using an old version of Google ... - GitHub
Even when i started a fresh React Native project and installed expo-ads-admob it still installs Google-Mobile-Ads-SDK (7.55.1).
Read more >
Expo in Bare RN project: Firebase AdMob and Analytics ...
FirebaseAnalytics. It works fine on Android but problems occurs on iOS with "pod install". Looks packages have conflict in theirs dependencies:.
Read more >
cannot find protocol declaration for 'gadinterstitialdelegate'
expo/expo[Bare] expo-ads-admob is using Google-Mobile-Ads-SDK (= 7.69.0) which conflicts with @react-native-firebase/analytics#13300.
Read more >
[Bare] expo-ads-admob is using Google-Mobile-Ads-SDK ...
[Bare] expo-ads-admob is using Google-Mobile-Ads-SDK (= 7.69.0) which conflicts with @react-native-firebase/analytics. linaia opened this issue ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found