flipper icon indicating copy to clipboard operation
flipper copied to clipboard

'FlipperKit/FlipperClient.h' file not found after firebase integration.

Open ahmtxonly opened this issue 2 years ago • 7 comments

Whole project turned upside down after Firebase integration.

My Podfile

require_relative '../node_modules/react-native/scripts/react_native_pods'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'

$RNFirebaseAsStaticFramework = true

platform :ios, '12.4'
install! 'cocoapods', :deterministic_uuids => false


target 'mobileOp1001' do
  use_frameworks! :linkage => :static

  config = use_native_modules!

  # Flags change depending on the env values.
  flags = get_default_flags()

  use_react_native!(
    :path => config[:reactNativePath],
    # Hermes is now enabled by default. Disable by setting this flag to false.
    # Upcoming versions of React Native may rely on get_default_flags(), but
    # we make it explicit here to aid in the React Native upgrade process.
    :hermes_enabled => true,
    :fabric_enabled => flags[:fabric_enabled],
    # Enables Flipper.
    #
    # Note that if you have use_frameworks! enabled, Flipper will not work and
    # you should disable the next line.
    # :flipper_configuration => FlipperConfiguration.enabled,
    # An absolute path to your application root.
    :app_path => "#{Pod::Config.instance.installation_root}/.."
  )

  target 'mobileOp1001Tests' do
    inherit! :complete
    # Pods for testing
  end

  
  post_install do |installer|

    react_native_post_install(
      installer,
      # Set `mac_catalyst_enabled` to `true` in order to apply patches
      # necessary for Mac Catalyst builds
      :mac_catalyst_enabled => false
    )
    __apply_Xcode_12_5_M1_post_install_workaround(installer)
  end
end

My packages

"dependencies": {
    "@notifee/react-native": "^7.3.0",
    "@react-native-async-storage/async-storage": "^1.17.11",
    "@react-native-firebase/app": "^16.4.6",
    "@react-native-firebase/messaging": "^16.4.6",
    "@react-native-masked-view/masked-view": "^0.2.8",
    "@react-navigation/bottom-tabs": "^6.4.0",
    "@react-navigation/native": "^6.0.13",
    "@react-navigation/native-stack": "^6.9.1",
    "@react-navigation/stack": "^6.3.2",
    "@reduxjs/toolkit": "^1.8.6",
    "@shopify/flash-list": "^1.3.1",
    "formik": "^2.2.9",
    "iconsax-react-native": "^0.0.8",
    "lodash": "^4.17.21",
    "lottie-react-native": "^5.1.4",
    "numeral": "^2.0.6",
    "react": "18.1.0",
    "react-native": "0.70.6",
    "react-native-error-boundary": "^1.1.16",
    "react-native-fast-image": "^8.6.3",
    "react-native-flipper": "^0.176.1",
    "react-native-gesture-handler": "^2.7.1",
    "react-native-linear-gradient": "^2.6.2",
    "react-native-reanimated": "^2.12.0",
    "react-native-reanimated-carousel": "^3.1.5",
    "react-native-render-html": "^6.3.4",
    "react-native-safe-area-context": "^4.4.1",
    "react-native-screens": "^3.18.2",
    "react-native-splash-screen": "^3.3.0",
    "react-native-svg": "^13.4.0",
    "react-native-swiper": "^1.6.0-rc.3",
    "react-redux": "^8.0.4",
    "redux-persist": "^6.0.0",
    "redux-persist-transform-encrypt": "^4.0.0",
    "yup": "^0.32.11"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9",
    "@babel/runtime": "^7.12.5",
    "@react-native-community/eslint-config": "^2.0.0",
    "@tsconfig/react-native": "^2.0.2",
    "@types/jest": "^26.0.23",
    "@types/lodash": "^4.14.186",
    "@types/mocha": "^10.0.0",
    "@types/node": "^18.11.0",
    "@types/numeral": "^2.0.2",
    "@types/react": "^18.0.21",
    "@types/react-native": "^0.70.6",
    "@types/react-test-renderer": "^18.0.0",
    "@typescript-eslint/eslint-plugin": "^5.37.0",
    "@typescript-eslint/parser": "^5.37.0",
    "babel-eslint": "^10.1.0",
    "babel-jest": "^26.6.3",
    "babel-plugin-module-resolver": "^4.1.0",
    "eslint": "^7.32.0",
    "eslint-config-airbnb": "^19.0.4",
    "eslint-config-airbnb-typescript": "^17.0.0",
    "eslint-config-prettier": "^8.5.0",
    "eslint-import-resolver-typescript": "^3.5.1",
    "eslint-plugin-import": "^2.26.0",
    "eslint-plugin-prettier": "^4.2.1",
    "husky": "^8.0.2",
    "jest": "^26.6.3",
    "metro-react-native-babel-preset": "0.72.3",
    "prettier": "^2.7.1",
    "pretty-quick": "^3.1.3",
    "react-native-svg-transformer": "^1.0.0",
    "react-test-renderer": "18.1.0",
    "redux-flipper": "^2.0.2",
    "typescript": "^4.8.3"
  },
image

ahmtxonly avatar Dec 19 '22 08:12 ahmtxonly

You've enabled use_frameworks when enabling firebase. use_frameworks and Flipper are not compatible. You can see that on L25 of the Podfile:

...
    # Note that if you have use_frameworks! enabled, Flipper will not work and
    # you should disable the next line.
...

For Firebase integration you can try downgrading to using v14, which doesn't currently require use_frameworks! to work.

    "@react-native-firebase/analytics": "14.12.0",
    "@react-native-firebase/app": "14.12.0",
    "@react-native-firebase/crashlytics": "14.12.0",

arthurtyukayev avatar Dec 19 '22 16:12 arthurtyukayev

@arthurtyukayev thank you so much my problem is solved.

ahmtxonly avatar Dec 20 '22 07:12 ahmtxonly

thanks man😃 it worked here, despite being what I didn't want

RalissonMattias avatar Jan 06 '23 01:01 RalissonMattias

Bump that thread We don't use use_frameworks and Firebase is sticked to version 14, but we still have that issue.

as4 avatar Jan 09 '23 14:01 as4

Bump that thread We don't use use_frameworks and Firebase is sticked to version 14, but we still have that issue.

If you're using rn-firebase v14 you don't need to use expo-build-properties. We are using v45 and react-native-firebase v14.12, and saw this issue when we included the expo-build-properties with use-frameworks in our plugins array. Turns out expo-build-properties is unnecessary in your plugins array until you upgrade rn-firebase.

dengel29 avatar Jan 12 '23 09:01 dengel29

Shouts to the Flipper team for all the hard work- it's "just one of those things" that our decision to move forward with Firebase makes Flipper useless. Scary world we're working in.

charneykaye avatar Feb 08 '23 19:02 charneykaye

Any news? It's incredible that we have to stick to Firebase 14 when 17 is out and there are not real alternative to Flipper because if you use Hermes a tool like React Native Debugger will not work...

aminta avatar Mar 16 '23 10:03 aminta

Does it work when you try this Flipper implementation instead - https://github.com/chiragramani/FlipperLite or https://github.com/chiragramani/SwiftFlipper?

chiragramani avatar Apr 20 '23 02:04 chiragramani

any solution ? i'm stuck with this bug now, moved to mmkv so debug was incompatible, had to install flipper but i have firebase too

alainib avatar Jul 13 '23 14:07 alainib

anything solutions ? Please?

NguyenManh1404 avatar Aug 28 '23 04:08 NguyenManh1404

Any news?

karimelsaidy avatar Nov 01 '23 06:11 karimelsaidy

this workaround this worked for me https://github.com/invertase/react-native-firebase/issues/6425#issuecomment-1527949355!

karimelsaidy avatar Nov 01 '23 06:11 karimelsaidy