React-native-firebase: 馃敟Expo SDK 33 + Firebase doesn't work

Created on 12 Jun 2019  路  5Comments  路  Source: invertase/react-native-firebase


Issue



I am trying to get react-native-firebase to work on Expo SDK 33 with messaging, notifications, analytics and remote-config. However, I'm running into this issue when running pod install:

image

It seems that the GoogleUtilities module isn't installed right, as it re-installs it every time, and gives this warning. I could not find other issues about this.

When I try to build, it can't find some files, like this one:

image


Project Files


  • iOS: Podfile contents.

iOS

Click To Expand

#### `ios/Podfile`: - [ ] I'm not using Pods - [x] I'm using Pods and my Podfile looks like:

pod 'ExpoKit',
    :git => "http://github.com/expo/expo.git",
    :tag => "ios/2.11.1",
    :subspecs => [
      "Core"
    ],
    :inhibit_warnings => true

  #PACKAGE: react-native-firebase
  pod 'Firebase/Core', '~> 5.20.2'
  pod 'GoogleIDFASupport', '~> 3.14.0'
  pod 'Firebase/Messaging', '~> 5.20.1'
  pod 'Firebase/RemoteConfig', '~> 5.20.1'

  # Install unimodules
  require_relative '../node_modules/react-native-unimodules/cocoapods.rb'
  use_unimodules!

...

#### `AppDelegate.m`:
// N/A


Android

Click To Expand

#### `android/build.gradle`:

// N/A
#### `android/app/build.gradle`:
// N/A
#### `android/settings.gradle`:
// N/A
#### `MainApplication.java`:
// N/A
#### `AndroidManifest.xml`:
<!-- N/A -->


Environment

Click To Expand

**`react-native info` output:**

  React Native Environment Info:
    System:
      OS: macOS 10.14.5
      CPU: (8) x64 Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz
      Memory: 1.27 GB / 16.00 GB
      Shell: 5.3 - /bin/zsh
    Binaries:
      Node: 10.15.3 - /usr/local/bin/node
      Yarn: 1.16.0 - /usr/local/bin/yarn
      npm: 6.9.0 - /usr/local/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    SDKs:
      iOS SDK:
        Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
      Android SDK:
        API Levels: 21, 22, 23, 25, 26, 27, 28
        Build Tools: 23.0.1, 24.0.1, 27.0.3, 28.0.2, 28.0.3
        System Images: android-24 | Google APIs Intel x86 Atom, android-27 | Google Play Intel x86 Atom, android-28 | Google Play Intel x86 Atom
    IDEs:
      Android Studio: 3.3 AI-182.5107.16.33.5264788
      Xcode: 10.2/10E125 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.8.3 => 16.8.3 
      react-native: https://github.com/expo/react-native/archive/sdk-33.0.0.tar.gz => 0.59.8 
    npmGlobalPackages:
      react-native-cli: 2.0.1
- **Platform that you're experiencing the issue on**: - [x] iOS - [ ] Android - [x] **iOS** but have not tested behavior on Android - [ ] **Android** but have not tested behavior on iOS - [ ] Both - **`Firebase` module(s) you're using that has the issue:** - firebase core + analytics - **Are you using `TypeScript`?** - No, flow.




Think react-native-firebase is great? Please consider supporting all of the project maintainers and contributors by donating via our Open Collective where all contributors can submit expenses. [Learn More]

Expo

All 5 comments

Updating your podfile to include use_unimodules!(exclude: ['expo-face-detector']) will fix this. There is a version clash for the GoogleUtilities pod which results in the pod not installing properly https://github.com/expo/expo/issues/4493

Also, the 5.x.x (as the only one supporting RN 59), asks to update from
com.android.tools.build:gradle:3.3.2 (by default in expo) to com.android.tools.build:gradle:3.4.1. Not sure if it will work. Is there any workarounds?

Not sure if it will work

Try it and report - should work

@mikehardy it doesn't work. com.android.tools.build:gradle:3.4.1 requires grandle 5.x.x which isn't compatible w/ expo 33 build configuration (it relies on grandle 4.x.x)

when trying to build it w/ com.android.tools.build:gradle:3.3.2, I'm having the following issue:

Error: Type com.google.android.gms.internal.measurement.zzk is referenced as an interface from com.google.android.gms.internal.measurement.zzn.

You can test it by running my project: https://github.com/n-sviridenko/expo-firebase-demo:

  1. clone & install it:
git clone [email protected]:n-sviridenko/expo-firebase-demo.git
cd expo-firebase-demo
yarn
  1. open android folder in Android Studio

The commit integrating react-native-firebase is here https://github.com/n-sviridenko/expo-firebase-demo/commit/47b9db960995aac0f77d893669469ca14a77ad36

Update: The error I'm getting is always different. Now, it's Error: Interfacecom.google.android.gms.internal.measurement.zzq(classpath class)used as super class of com.google.android.gms.internal.measurement.zzcm.

Wow, I went to see what was going on in Expo-land and ...no way I'd wade into gradle upgrades they don't approve: https://github.com/expo/expo/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+gradle

Oof!

Here's the thing. Our of our normal dependency matrix between react-native + react-native-firebase + google firebase sdks, I think the least important is the react-native one

What I mean by that, is that I think you can most safely try violating the react-native constraints and using non-specified tech there.

And you can always use older versions of react-native-firebase and google firebase sdks, at your peril for dealing with fixed bugs, and as long as they line up.

So I'd go with current whatever react-native expo requests, doing it the way they want. Then for whatever version you landed on, try corresponding RNFB and Google FB stuff. Maybe it works?

But Expo has some pretty hard version requirements as does react-native-firebase. And we have a serious and vital job keeping up with google current, making older stuff work in dependency tangles, I personally don't have the time for it except to say it might be possible. RNFB and Google SDKs worked back then right?

So I'm going to close this but if discussion continues and there's an eventual result of a nice doc snippet that explains what exact versions of RN+RNFB+Google Firebase work with what versions of Expo, that's useful and maybe we can put it somewhere?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

OleksandrKucherenko picture OleksandrKucherenko  路  46Comments

adirzoari picture adirzoari  路  50Comments

neverlan picture neverlan  路  47Comments

tranty9597 picture tranty9597  路  79Comments

rewieer picture rewieer  路  51Comments