Ulteriori informazioni su Android e Firebase

Mentre sviluppi il tuo progetto Android utilizzando Firebase, potresti scoprire concetti non familiari o specifici di Firebase. Questa pagina ha lo scopo di rispondere a queste domande o indicarti le risorse per saperne di più.

Se avete domande su un argomento che non rientrano in questa pagina, non esitate a visitare uno dei nostri comunità online . Inoltre, aggiorneremo periodicamente questa pagina con nuovi argomenti, quindi controlla di nuovo per vedere se abbiamo aggiunto l'argomento che desideri approfondire!

Plugin Firebase Assistant per Android Studio

Firebase Assistant è un plug-in Android Studio che registra la tua app Android con un progetto Firebase e aggiunge i file di configurazione, i plug-in e le dipendenze necessari di Firebase al tuo progetto Android, tutto da Android Studio!

Seguire le istruzioni del Android ottenere pagina iniziato ad utilizzare il Firebase Assistant. Assicurarsi che si sta utilizzando le versioni più up-to-date di entrambi Android Studio e la Firebase Assistant (andare su File> Controlla aggiornamenti).

Quando si seleziona prodotti specifici Firebase da aggiungere alla vostra applicazione, la Firebase Assistente dichiara automaticamente le dipendenze richieste nella vostra app/build.gradle file. Tuttavia, per utilizzare le funzionalità di Firebase che vanno oltre le attuali capacità di Firebase Assistant, potresti voler apportare alcune modifiche manuali a queste dipendenze:

  • Se si desidera utilizzare il Firebase Android BoM , aggiornare le dipendenze nel modulo (a livello di app) File Gradle (di solito app/build.gradle ) per importare la piattaforma distinta base. Dovrai anche rimuovere le versioni da ogni riga di dipendenza della libreria Firebase.

  • Se si desidera utilizzare una libreria di Kotlin estensioni , modificare la riga di dipendenza aggiunto al modulo (a livello di app) File Gradle (di solito app/build.gradle ) per utilizzare il ktx versione della libreria Firebase invece.

Servizi Google — plugin e file di configurazione

Come parte di aggiunta Firebase al progetto Android, è necessario aggiungere i google-services plug-in e un google-services.json file di configurazione al progetto.

Se si aggiunge Firebase al progetto Android tramite la console Firebase , l' API di gestione REST , o la Firebase CLI , è necessario aggiungere manualmente il plug-in e file di configurazione per il progetto. Tuttavia, se si utilizza il Firebase Assistant , queste operazioni vengono eseguite automaticamente per voi durante l'installazione.

Visita la documentazione di Android per capire come i servizi Google plug-in e di lavoro file di configurazione insieme.

Firebase Android BoM (distinta materiali)

La BoM (Bill of Materials) di Firebase Android ti consente di gestire tutte le versioni della libreria Firebase specificando solo una versione: la versione della BoM.

Quando utilizzi la BoM Firebase nella tua app, la BoM estrae automaticamente le singole versioni della libreria mappate alla versione di BoM. Tutte le singole versioni della libreria saranno compatibili. Quando aggiorni la versione della distinta base nella tua app, tutte le librerie Firebase che utilizzi nella tua app verranno aggiornate alle versioni mappate a quella versione della distinta base.

Per sapere che Firebase versioni di libreria vengono abbinate ad una specifica versione distinta base, controllare le note di rilascio per la versione distinta. Se è necessario confrontare le versioni di libreria mappati una versione distinta rispetto ad un'altra versione distinta base, utilizzare il confronto widget di seguito.

Scopri di più su supporto Gradle per le piattaforme distinta base .

Ecco come utilizzare il Firebase Android distinta per le dipendenze di dichiarazione nel modulo (a livello di app) File Gradle (di solito app/build.gradle ). Quando si utilizza la distinta base, non si specificano le singole versioni della libreria nelle righe delle dipendenze.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:29.0.4')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Di seguito sono riportate alcune domande frequenti sull'utilizzo del BoM Android di Firebase:

Confronta le versioni della distinta base di Firebase

Librerie di estensioni Kotlin (KTX)

Le librerie di estensioni Firebase Kotlin (KTX) sono piccoli compagni degli SDK Firebase di base che ti consentono di scrivere codice Kotlin bello e idiomatico.

Per utilizzare una libreria KTX nella vostra applicazione, modificare la dipendenza per includere il -ktx suffisso. Ogni libreria KTX ha automaticamente una dipendenza dalla libreria di base, quindi non è necessario includere entrambe le dipendenze nella tua app.

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:29.0.4')

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX library instead (which automatically has a dependency on the base library)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

Ogni libreria KTX fornisce diverse estensioni sintattiche della libreria di base. Ad esempio, la libreria Analytics KTX semplifica la registrazione degli eventi:

Prima (utilizzando la libreria di base)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

Dopo (usando la libreria KTX invece)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

Tutti i prodotti Firebase offrono una libreria di KTX ad eccezione di Firebase ML e App indicizzazione.

Se non avete ancora, controllare i documenti di riferimento API per le librerie KTX.

Moduli di funzionalità e consegna di funzionalità di gioco

A partire da maggio 2021 (Firebase BoM v28.0.0), gli SDK Android di Firebase possono essere utilizzati in moduli di funzionalità dinamiche che vengono installati separatamente dal modulo dell'applicazione di base.

Per abilitare il supporto per i moduli funzione Dynamic, aggiungere il seguente dipendenza del modulo base build.gradle di file:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta01'
}

Ora che hai aggiunto il supporto per i moduli dinamici, puoi aggiungere le dipendenze dell'SDK di Firebase (con o senza Firebase BoM) per presentare i moduli della tua app e usarli come faresti normalmente.

Ad esempio, se l'applicazione utilizza in tempo reale del database al potere una specifica caratteristica in tempo reale si potrebbe aggiungere il firebase-database di dipendenza alla build.gradle del modulo funzione piuttosto che il modulo base. Ciò ridurrà le dimensioni del download per la maggior parte degli utenti.

Prestare attenzione ai seguenti avvertimenti quando si utilizzano gli SDK Firebase nei moduli delle funzionalità:

  • Prodotti come dinamica collegamenti o Firebase in-app di messaggistica che si basano sulla Analytics first_open evento possono mancare a questo evento quando viene utilizzato in un modulo di funzione dinamica.

  • Quando utilizzi Cloud Firestore e Autenticazione insieme, dovresti sempre includerli entrambi nello stesso modulo. Se questo non è possibile, quindi assicurarsi che l'autenticazione viene caricato prima nube Firestore; in caso contrario, alcune operazioni di Cloud Firestore potrebbero avere uno stato di autenticazione errato.

  • Quando si utilizza firebase-crashlytics-ndk come dipendenza di un modulo funzione dinamica, è necessario impostare unstrippedNativeLibsDir struttura si trova a vostra applicazione build.gradle di file, come descritto nella documentazione di Crashlytics NDK .

Per ulteriori informazioni sui moduli di funzionalità and Play di consegna, visitare Panoramica Play consegna .

Servizi di Google Gradle plug-in vs servizi di Google Play vs Google Play Store

Diversi pezzi dell'ecosistema di Google, Firebase e Android hanno convenzioni di denominazione simili. Ecco una breve spiegazione per ciascuno:

Plugin Gradle dei servizi di Google
Un plugin Gradle ( com.google.gms.google-services ) che funziona a tempo di costruzione al fine di garantire che la vostra applicazione ha la giusta configurazione per l'accesso Firebase e Google API
Nonostante il nome, questo plug-in non ha alcuna relazione con i servizi di Google Play (vedi voce successiva) e non ha alcun impatto sulle funzionalità della tua app in fase di esecuzione.
Questo plugin elabora anche il google-services.json di file che si aggiunge alla vostra applicazione, come parte della creazione di Firebase. Ulteriori informazioni sul Google servizi plug Gradle .
Servizi di Google Play
Un servizio in background invisibile che viene eseguito su un dispositivo Android e fornisce diverse API Google comuni (come Google Maps e Google Sign In) alle app sul dispositivo
Centralizzando queste API comuni in un unico servizio, riduce le dimensioni di altre app e consente a un dispositivo di ricevere aggiornamenti di sicurezza automatici e miglioramenti delle funzionalità senza un aggiornamento del sistema operativo. Ulteriori informazioni su Google Play Services .
Google Play Store
Un negozio per scaricare app, film, libri e altro su un dispositivo Android
In qualità di sviluppatore, gestisci la distribuzione, le versioni e così via della tua app tramite Google Play Console. Se un dispositivo ha il Google Play Store, esegue anche i servizi di Google Play (vedi voce precedente). Ulteriori informazioni sul Play Store di Google per gli sviluppatori .
Servizi di Google Play Giochi
Una serie di API per sviluppatori di giochi per dispositivi mobili
Ulteriori informazioni su Google Play Giochi servizi e come integrare i Firebase con i tuoi Google Play Games Project Services .

Risorse open source per gli SDK Android di Firebase

Firebase supporta lo sviluppo open source e incoraggiamo i contributi e i feedback della community.

SDK Android Firebase

La maggior parte dei Firebase Android SDK sono sviluppati come librerie open source nel nostro pubblico repository GitHub Firebase . Stiamo lavorando attivamente per spostare presto le rimanenti librerie Firebase sviluppate privatamente sul nostro GitHub pubblico!

Esempi di avvio rapido

Firebase mantiene una raccolta di esempi di avvio rapido per la maggior parte delle API Firebase su Android. Trovate questi Quickstarts nel nostro pubblico repository QuickStart Firebase GitHub .

Puoi aprire ogni avvio rapido come progetto Android Studio, quindi eseguirli su un dispositivo mobile o un dispositivo virtuale (AVD). Oppure puoi utilizzare questi suggerimenti rapidi come codice di esempio per l'utilizzo degli SDK Firebase.

Altri argomenti di interesse