getInstance () предоставит вам уникальный экземпляр для всего вашего приложения, если вы используете
FirebaseFirestore.getInstance()
или
FirebaseDatabase.getInstance()
Это будет не создавать другой экземпляр, если вы создаете их в разных классах, вместо этого он будет повторно использовать один и тот же снова и снова.
Вы также можете увидеть реализацию ctrl + click
в методе в вашем IDE
@NonNull
public static FirebaseFirestore getInstance() {
FirebaseApp app = FirebaseApp.getInstance();
if (app == null) {
throw new IllegalStateException("You must call FirebaseApp.initializeApp first.");
} else {
return getInstance(app, "(default)");
}
}
@NonNull
public static FirebaseApp getInstance() {
synchronized(LOCK) {
FirebaseApp defaultApp = (FirebaseApp)INSTANCES.get("[DEFAULT]");
if (defaultApp == null) {
throw new IllegalStateException("Default FirebaseApp is not initialized in this process " + ProcessUtils.getMyProcessName() + ". Make sure to call FirebaseApp.initializeApp(Context) first.");
} else {
return defaultApp;
}
}
}