iulian
iulian

Reputation: 41

Firebase: Firebase App named '[DEFAULT]' already exists with different options or config (app/duplicate-app)

I am a newbie, and I am stuck. I don`t know what to do. My browser is showing that fire store is not able to connect to the backend. This is my code :

import firebase from 'firebase/compat/app';
import 'firebase/compat/auth';
import 'firebase/compat/firestore';
import 'firebase/compat/storage';
import {initializeApp} from 'firebase/app'

const firebaseConfig = initializeApp({
  apiKey: "AIzaSyA9BnlX96fMf7XiUVCFRsoQzG8DGERJkeY",
  authDomain: "disneyplus-clone-a33d5.firebaseapp.com",
  projectId: "disneyplus-clone-a33d5",
  storageBucket: "disneyplus-clone-a33d5.appspot.com",
  messagingSenderId: "37918794208",
  appId: "1:37918794208:web:dbe9842dfe1dda522a4b85",
  measurementId: "G-DRVLJKWRWG",
});

const firebaseApp = firebase.initializeApp(firebaseConfig);
const db = firebaseApp.firestore();
const auth = firebase.auth();
const provider = new firebase.auth.GoogleAuthProvider();
const storage = firebase.storage();


export { auth, provider, storage };
export default db;

And if i delete the initializeApp from const firebaseConfig it gives my the following error:

@firebase/firestore: Firestore (9.2.0): Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: FirebaseError: [code=permission-denied]: Permission denied on resource project disneyplus-clone-a33d5. This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.

Hope you can help me. Thank you !

Upvotes: 4

Views: 6021

Answers (5)

BenVercammen
BenVercammen

Reputation: 91

I got this error after messing with my firebase project (in the firebase console). In the end I discovered that my firebase_options.dart file was outdated, so I had to run

flutterfire configure

in order to regenerate those option files and then my problem was solved...

Upvotes: 2

K D
K D

Reputation: 215

Add this in Flutter

NOTE - Use this "Firebase.initializeApp" only Once in the entire Project.

// Wait for Default Firebase app to initialize

  if (Firebase.apps.isEmpty) {
  await Firebase.initializeApp(
    name: 'YourAPP',
    options: DefaultFirebaseOptions.currentPlatform,
  ).whenComplete(() {
    print("completedAppInitialize");
    // setState(() {});
  });
}

Upvotes: 0

Sanat Kumar
Sanat Kumar

Reputation: 92

I faced this issue when I changed the firebase project in firebase console for my REACT NATIVE ANDROID APP. to fix this issue there is a needs to clean the builds and related files. Steps:-

  1. cd android
  2. ./gradlew clean or gradlew clean
  3. ./gradlew cleanBuildCache
  4. npm run android

import firebase from 'firebase/compat/app';
import 'firebase/compat/auth';
import 'firebase/compat/firestore';
import 'firebase/compat/storage';
import {initializeApp} from 'firebase/app'

const firebaseConfig = initializeApp({
  apiKey: "AIzaSyA9BnlX96fMf7XiUVCFRsoQzG8DGERJkeY",
  authDomain: "disneyplus-clone-a33d5.firebaseapp.com",
  projectId: "disneyplus-clone-a33d5",
  storageBucket: "disneyplus-clone-a33d5.appspot.com",
  messagingSenderId: "37918794208",
  appId: "1:37918794208:web:dbe9842dfe1dda522a4b85",
  measurementId: "G-DRVLJKWRWG",
});

const firebaseApp = firebase.initializeApp(firebaseConfig);
const db = firebaseApp.firestore();
const auth = firebase.auth();
const provider = new firebase.auth.GoogleAuthProvider();
const storage = firebase.storage();


export { auth, provider, storage };
export default db;

Upvotes: 0

Cyrus Zei
Cyrus Zei

Reputation: 2660

This is what I did

  1. Create a file called firebase.tsx and add this
// firebase.tsx
import { initializeApp, getApp } from "firebase/app";

const firebaseConfig = {
    // firebaseconfig keys
};

const app = initializeApp(firebaseConfig);

export { app };
  1. Then where ever you want to use any firebase features you can just import the app like this
import {app} from './your/path/to/firebase.tsx'
const db = getFirestore(app);

and then use it as a normal firebase.

P.S This works for firebase v9

Upvotes: 0

abhi patil
abhi patil

Reputation: 514

can you try this workaroun. let me know if this helps

const firebaseApp = firebase.initializeApp(firebaseConfig);
const db = firebaseApp.firestore();
//workaround
db.settings({ experimentalForceLongPolling: true });

Upvotes: 0

Related Questions