Google si impegna a promuovere l'equità razziale per le comunità nere. Vedi come.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Note sulla versione di Firebase Admin Java SDK

Per rivedere le note di rilascio per la console Firebase e per altre piattaforme Firebase e relativi SDK, consultare le Note di rilascio di Firebase .

Versione 6.15.0 - 23 luglio 2020

  • L'SDK di amministrazione ora importa tutte le dipendenze della piattaforma Google Cloud tramite com.google.cloud:libraries-bom .

Autenticazione

Versione 6.14.0 - 17 giugno 2020

  • Versione di dipendenza Cloud Firestore aggiornata alla 1.34.0.
  • Versione della dipendenza Cloud Storage aggiornata alla 1.108.0.
  • Aggiornate altre dipendenze SDK. Le librerie Netty, Google API Client, Google HTTP Client, Google API Common e JSON dalle quali dipende l'SDK sono state aggiornate a versioni più recenti.

Cloud Messaging

  • Aggiunte FcmOptions in MulticastMessage . Grazie pavlospt per il contributo .
  • Aggiunto supporto per il parametro direct_boot_ok .

Versione 6.13.0 - 14 maggio 2020

Autenticazione

  • Aggiunte getUsers() ed deleteUsers() per il recupero e l'eliminazione di account utente in blocco.

Versione 6.12.2 - 11 febbraio 2020

  • Le API di gestione del progetto nella classe FirebaseProjectManagement ora FirebaseProjectManagement automaticamente le operazioni non riuscite a causa di errori HTTP idonei a riprovare.

Autenticazione

  • Le API di gestione utenti nella classe FirebaseAuth ora FirebaseAuth automaticamente a eseguire operazioni non riuscite a causa di errori HTTP idonei a riprovare.

Versione 6.12.1 - 23 gennaio 2020

Cloud Messaging

  • AndroidNotification classe AndroidNotification ora formatta correttamente il campo event_time inviato al servizio di messaggistica cloud.

Versione 6.12.0 - 18 dicembre 2019

  • Risolto un bug nell'analisi della stringa della data durante la gestione degli errori. Grazie sakebook per il contributo .

Cloud Firestore

  • Versione della dipendenza google-cloud-firestore aggiornata alla 1.31.0, che fornisce supporto per le query IN . Grazie achuinard per il contributo .

Cloud Messaging

  • Aggiunto parametro notificationCount alla classe AndroidNotification . Grazie knocknarea per il contributo .
  • L'SDK ora gestisce correttamente il codice di errore THIRD_PARTY_AUTH_ERROR restituito dal servizio back-end durante l'invio di notifiche a iOS e destinazioni Web.

Versione 6.11.0 - 30 ottobre 2019

  • Versione della dipendenza Cloud Firestore aggiornata alla 1.21.0.
  • Versione della dipendenza Cloud Storage aggiornata a 1.91.0.

Cloud Messaging

  • Aggiunto un Builder per la costruzione di oggetti di Notification .
  • Aggiunta una serie di nuovi parametri alla classe AndroidNotification che consente un'ulteriore personalizzazione delle notifiche destinate ai dispositivi Android.
  • Numero di messaggi per batch aumentato a 500.

Versione 6.10.0 - 04 settembre 2019

Cloud Messaging

  • Aggiunta una nuova API WebpushFcmOptions per la configurazione delle funzionalità fornite WebpushFcmOptions FCM per il Web. Grazie Kirmerzlikin per il contributo .
  • Aggiunte nuove API per specificare un URL immagine nelle notifiche.

Database in tempo reale

  • Gli sviluppatori possono ora testare le chiamate API del database in tempo reale indirizzando il traffico SDK all'emulatore RTDB. Impostare la variabile di ambiente FIREBASE_DATABASE_EMULATOR_HOST per specificare l'endpoint dell'emulatore nel formato host:port .

Versione 6.9.0 - 18 luglio 2019

  • Versione client Cloud Firestore aggiornata alla 1.9.0.
  • Versione del client di Cloud Storage aggiornata alla 1.79.0.
  • Versione client API di Google aggiornata alla 1.30.1.
  • Versione della dipendenza Guava aggiornata a 26.0-android.

Firebase Cloud Messaging

  • Aggiunte FcmOptions , AndroidFcmOptions e ApnsFcmOptions per specificare le etichette analitiche per le notifiche FCM.
  • MulticastMessage.Builder API MulticastMessage.Builder ora supporta la specifica di token di registrazione del dispositivo come Collection anziché come List .

Versione 6.8.1 - 24 aprile 2019

Firebase Cloud Messaging

  • L'SDK ora riprova automaticamente a fallire le chiamate API FCM a causa di errori HTTP 500 e 503.

Database in tempo reale

  • L'SDK ora genera eccezioni con chiari messaggi di errore durante la serializzazione di POJO con oggetti numerici non standard.

Versione 6.8.0 - 14 marzo 2019

Firebase Cloud Messaging

  • Una nuova API sendMulticast() per l'invio di un messaggio a un elenco di token di registrazione del dispositivo.
  • Una nuova API sendAll() per l'invio di un elenco di messaggi come singolo batch.

Versione 6.7.0 - 9 gennaio 2019

  • Firestore istanze di Firestore inizializzate dall'SDK vengono ora ripulite quando viene chiamato FirebaseApp.delete() .

Autenticazione

  • Aggiunte le API di generazione del collegamento di azione e-mail per la creazione di collegamenti per reimpostazione della password, verifica e-mail e accesso al collegamento e-mail tramite generatePasswordResetLink() , generateEmailVerificationLink() e generateSignInWithEmailLink() . Vedere la documentazione per maggiori dettagli e esempi di codice.

Cloud Messaging

  • Aps classe Aps ora supporta la configurazione di un suono critico. A questo scopo è stata introdotta una nuova classe CriticalSound .
  • Aggiunto nuovo metodo setChannelId() all'API AndroidNotification.Builder per l'impostazione dell'ID del canale di notifica Android (nuovo in Android O).

Versione 6.6.0 - 28 novembre 2018

  • Una nuova API FirebaseProjectManagement per la gestione di app in un progetto Firebase.
  • Nuovi listAndroidApps() e listIosApps() per elencare le app esistenti in un progetto.
  • Nuovi createAndroidApp() e createIosApp() per la creazione di nuove app in un progetto.
  • Nuove API AndroidApp e IosApp per l'aggiornamento di singole app.

Autenticazione

  • Le API di gestione utenti in FirebaseAuth sono state migrate nel nuovo endpoint REST di Identity Toolkit. Ora è necessario un ID progetto per utilizzare FirebaseAuth . Gli sviluppatori che utilizzano le credenziali dell'account di servizio o la distribuzione in runtime di Google gestiti come App Engine non noteranno alcuna differenza.

Cloud Messaging

  • ApsAlert classe ApsAlert ora supporta lo specyfing di un sottotitolo. Grazie chemidy per il contributo .
  • Gestione degli errori migliorata richiedendo una risposta più dettagliata all'errore dal servizio back-end FCM.

Versione 6.5.0 - 14 settembre 2018

  • FirebaseOptions.Builder espone un nuovo metodo setFirestoreOptions() che può essere utilizzato per configurare le istanze Firestore inizializzate dall'SDK.
  • Versione client Cloud Firestore aggiornata a 0.61.0-beta.
  • Versione client di Cloud Storage aggiornata a 1.43.0.

Versione 6.4.0 - 28 agosto 2018

Cloud Messaging

  • Il tipo WebpushNotification ora fornisce un'API Builder e supporta coppie chiave-valore arbitrarie nel suo payload.

Versione 6.3.0 - 17 luglio 2018

  • L'Admin SDK può ora leggere l'ID del progetto Firebase / Google Cloud Platform da entrambe le variabili di ambiente GCLOUD_PROJECT e GOOGLE_CLOUD_PROJECT .

Autenticazione

  • L'amministratore SDK può ora creare token personalizzati senza essere inizializzato con le credenziali dell'account di servizio.
  • L'SDK ora fornisce un setServiceAccountId() opzioni setServiceAccountId() , che può essere utilizzato per impostare solo l'e-mail client di un account di servizio.
  • Se distribuito in un ambiente gestito da Google (ad esempio Google App Engine), l'SDK può rilevare automaticamente un ID account di servizio senza alcuna configurazione esplicita.

Versione 6.2.0 - 31 maggio 2018

Autenticazione

Versione 6.1.0 - 15 maggio 2018

Autenticazione

  • Deprecato il metodo setCustomClaims() denominato in modo errato. Gli sviluppatori dovrebbero invece utilizzare il metodo setCustomUserClaims() .

Versione 6.0.0 - 8 maggio 2018

  • FirebaseAuth interfacce FirebaseAuth , FirebaseMessaging e FirebaseInstanceId ora espongono una serie di metodi di blocco. Ogni operazione ha versioni bloccanti e asincrone.
  • Rimossa l'interfaccia FirebaseCredential obsoleta.
  • Rimossa l'interfaccia Task obsoleta insieme al pacchetto com.google.firebase.tasks .
  • Supporto interrotto per il runtime Java 7 di App Engine. Si consiglia agli sviluppatori di utilizzare Admin SDK con Java 8 durante la distribuzione su App Engine.
  • Rimossa l'API FirebaseDatabase.setLogLevel() obsoleta e le relative utilità di registrazione. Gli sviluppatori dovrebbero utilizzare SLF4J per configurare direttamente la registrazione.

    Per maggiori dettagli su queste modifiche di rottura, consultare la Guida alla migrazione dell'amministratore SDK .

Versione 5.11.0 - 25 aprile 2018

  • Aggiornato la versione di dipendenza di Google Cloud Firestore a 0.45.0-beta.
  • Aggiornato la versione di dipendenza di Google Cloud Storage alla 1.27.0.
  • Aggiornato la versione di dipendenza Netty alla 4.1.22.

Autenticazione

Versione 5.10.0 - 17 aprile 2018

Inizializzazione

  • Aggiunti i setConnectTimeout() e setReadTimeout() alla classe FirebaseOptions.Builder . Questi metodi consentono di configurare i timeout per le richieste HTTP in uscita effettuate dall'SDK. Queste impostazioni influiscono su tutte le richieste ad eccezione delle richieste fatte a Firebase Realtime Database e Cloud Firestore.

Cloud Messaging

  • Aggiunto il metodo setMutableContent() alla classe Aps.Builder . Questo può essere usato per impostare la proprietà mutable-content quando si inviano messaggi FCM ai target APN.
  • Aggiunto supporto per la specifica di campi valore-chiave arbitrari nella classe Aps.Builder .
  • Gestione degli errori migliorata nell'API FirebaseMessaging .

Autenticazione

  • L'API FirebaseAuth ora utilizza HttpTransport configurato tramite FirebaseOptions per recuperare i certificati di chiave pubblica durante la verifica dei token ID. Grazie xbauquet per il contributo .

Versione 5.9.0 - 14 febbraio 2018

Cloud Messaging

  • Una nuova API FirebaseMessaging per l'invio di messaggi FCM e la gestione di abbonamenti di argomenti.
  • Un nuovo metodo sendAsync() per l'invio di messaggi FCM.
  • Un nuovo metodo subscribeToTopicAsync() per iscrivere un elenco di token di registrazione del dispositivo a un argomento FCM.
  • Un nuovo metodo unsubscribeFromTopicAsync() per annullare la sottoscrizione di un elenco di token di registrazione del dispositivo da un argomento FCM.

Autenticazione

  • Il metodo verifyIdTokenAsync() ora ha un sovraccarico che accetta un parametro checkRevoked booleano. Se true , viene eseguito un controllo aggiuntivo per vedere se il token è stato revocato.
  • Un nuovo revokeRefreshTokensAsync() per invalidare tutti i token emessi a un utente.
  • La classe UserRecord introduce un nuovo metodo getTokensValidAfterTimestamp() per restituire il tempo prima del quale i token non sono validi.

Database in tempo reale

  • Le eccezioni generate dai gestori di eventi del database sono ora registrate.

Cloud Firestore

  • Aggiornato il client Cloud Firestore all'ultima versione disponibile.

Inizializzazione

  • Il metodo FirebaseOptions.Builder.setStorageBucket() ora genera un'eccezione chiara quando viene invocato con un URL bucket anziché il nome.
  • Implementata una correzione per un potenziale conflitto di versione di Guava che causava un IllegalStateException (errore di precondizione) in alcuni ambienti.

Versione 5.8.0 - 11 gennaio 2018

Inizializzazione

  • Il metodo FirebaseApp.initializeApp() ora fornisce un sovraccarico che non richiede alcun argomento. Questo inizializza un'app utilizzando le credenziali predefinite dell'applicazione Google e altre FirebaseOptions caricate dalla variabile d'ambiente FIREBASE_CONFIG .

Autenticazione

  • Gestione degli errori migliorata nelle API di gestione utenti nella classe FirebaseAuth . Queste operazioni generano ora eccezioni con codici di errore ben definiti.

Database in tempo reale

  • L'SDK ora serializza grandi valori interi doppi come lunghi quando appropriato.

Versione 5.7.0 - 21 dicembre 2017

  • Una nuova API FirebaseInstanceId che facilita l'eliminazione degli ID istanza e dei dati utente associati dai progetti Firebase.

Autenticazione

  • Non utilizza più la dipendenza org.json nelle API di autenticazione, il che semplifica l'utilizzo dell'API in ambienti con librerie JSON in conflitto.

Versione 5.6.0 - 08 dicembre 2017

  • Aggiornato la versione della dipendenza comune dell'API di Google alla versione più recente (1.2.0).

Autenticazione

  • Aggiunto il metodo listUsersAsync() alla classe FirebaseAuth . Questo metodo consente di elencare o iterare tutti gli account utente in un progetto Firebase.
  • Aggiunto il metodo setCustomUserClaimsAsync() alla classe FirebaseAuth . Questo metodo consente di impostare attestazioni personalizzate su un utente Firebase. È possibile accedere alle rivendicazioni personalizzate tramite il token ID dell'utente.

Database in tempo reale

  • Implementato nuovamente il livello di comunicazione WebSocket del client Realtime Database utilizzando Netty.

Versione 5.5.0 - 07 novembre 2017

Database in tempo reale

Versione 5.4.0 - 11 ottobre 2017

  • Una nuova API ThreadManager che può essere utilizzata per specificare il pool di thread e ThreadFactory che devono essere utilizzati ThreadFactory .
  • Tutte le API che supportano operazioni asincrone ora restituiscono un ApiFuture . La vecchia API Task è stata deprecata. Per ogni metodo x() che restituisce un Task , un nuovo xAsync() metodo che restituisce un ApiFuture è stato introdotto.
  • L'SDK ora garantisce la chiusura graduale di tutti i thread avviati. Nella maggior parte degli ambienti, l'SDK utilizzerà i demoni per tutte le attività in background. Lo sviluppatore può anche avviare una chiusura graduale dei thread chiamando FirebaseApp.delete() .

Inizializzazione

Versione 5.3.1 - 13 settembre 2017

Autenticazione

  • Lancio di un errore accurato e più dettagliato da verifyIdToken() in caso di eccezione di basso livello.

Database in tempo reale

  • Gestione e registrazione corrette delle eccezioni generate onComplete() dei gestori di transazioni.

Versione 5.3.0 - 14 agosto 2017

Autenticazione

  • Aggiunto il metodo getUserByPhoneNumber() all'interfaccia FirebaseAuth . Questo metodo consente di recuperare le informazioni del profilo utente tramite un numero di telefono.
  • CreateRequest tipi CreateRequest e UpdateRequest ora forniscono setter per specificare un numero di telefono, che può essere utilizzato per creare utenti con un campo numero di telefono e / o aggiornare il numero di telefono associato a un utente.
  • Aggiunto il metodo getPhoneNumber() a UserRecord , che espone il numero di telefono associato a un account utente.
  • Aggiunto il metodo getPhoneNumber() a UserInfo , che espone il numero di telefono associato a un account utente da un provider di identità collegato.

Database in tempo reale

  • Deprecato il metodo FirebaseDatabase.setLogLevel() . Utilizzare SLF4J per configurare la registrazione.
  • Registrazione di un errore dettagliato quando il client del database non riesce ad autenticarsi con i server Firebase back-end.

Versione 5.2.0 - 14 giugno 2017

  • Nuovi metodi di fabbrica nella classe FirebaseCredentials che accettano argomenti HttpTransport e JsonFactory . Queste impostazioni vengono utilizzate quando le credenziali effettuano chiamate HTTP per ottenere i token di accesso OAuth2.
  • Nuovi setHttpTransport() e setJsonFactory() nella classe FirebaseOptions . Queste impostazioni sono utilizzate da tutti i servizi dell'SDK tranne FirebaseDatabase .

Versione 5.1.0 - 07 giugno 2017

Autenticazione

  • Una nuova API di gestione utenti che consente il provisioning e la gestione degli utenti Firebase dalle applicazioni Java. Questa API aggiunge i getUserByEmail() getUser() , getUserByEmail() , createUser() , updateUser() ed deleteUser() all'interfaccia FirebaseAuth .

Versione 5.0.1 - 01 giugno 2017

Database in tempo reale

  • Risolto un problema con la perdita del thread dell'API del database che rendeva instabile l'SDK durante l'esecuzione nell'ambiente Google App Engine.

Versione 5.0.0 - 17 maggio 2017

Inizializzazione

  • I metodi di fabbrica nella classe FirebaseCredentials ora possono generare IOExceptions , fornendo una semantica fail-fast e facilitando al contempo una più semplice gestione degli errori.
  • Il metodo deprecato setServiceAccount() è stato rimosso dalla classe FirebaseOptions.Builder a favore del metodo setCredential() .
  • Cercare di inizializzare l'SDK senza impostare una credenziale ora genera un'eccezione.
  • L'interfaccia FirebaseCredential ora restituisce un nuovo tipo di GoogleOAuthAccessToken , che incapsula sia la stringa di token che il suo tempo di scadenza.

Versione 4.1.7 - 20 aprile 2017

  • Presentazione di un nuovo metodo FirebaseApp.delete() , che può essere utilizzato per arrestare correttamente le istanze delle app. Tutte le invocazioni di app dopo una chiamata a delete() genereranno eccezioni. Le istanze di app eliminate possono anche essere inizializzate nuovamente con lo stesso nome, se necessario.

  • Dipendenze SDK aggiornate. Le librerie Guava, Client API di Google e JSON da cui dipende l'SDK sono state aggiornate a versioni più recenti.

Versione 4.1.6 - 04 aprile 2017

Database in tempo reale

  • Aggiornato l'SDK per selezionare l'implementazione corretta del pool di thread durante l'esecuzione su una JVM normale con librerie di App Engine nel classpath .

Versione 4.1.5 - 28 marzo 2017

Database in tempo reale

  • Risolta la costante di versione dell'SDK non valida nella classe FirebaseDatabase rilasciata nella v4.1.4.

Versione 4.1.4 - 28 marzo 2017

Autenticazione

  • Aggiornato l'SDK per aggiornare periodicamente il token di accesso OAuth utilizzato internamente da FirebaseApp . Ciò riduce quasi a zero il numero di errori di autenticazione riscontrati in fase di esecuzione da vari componenti dell'SDK (ad esempio Realtime Database). Questa funzione è attiva per impostazione predefinita quando viene eseguita in ambienti Java tipici o nell'ambiente Google App Engine con supporto per i thread in background.

Versione 4.1.3 - 7 marzo 2017

Database in tempo reale

  • Database in tempo reale aggiornato per scambiare correttamente il token ID utilizzato per autenticare il websocket sottostante quando viene generato un nuovo token ID. La connessione al websocket viene comunque disconnessa e ricollegata ogni ora quando scade un token ID a meno che non si chiami manualmente getAccessToken su FirebaseCredential utilizzato per autenticare l'SDK. In una versione futura, l'SDK aggiorna automaticamente i token ID automaticamente prima della scadenza.

Versione 4.1.2 - 14 febbraio 2017

Inizializzazione

  • Aggiornato initalizeApp() per leggere in modo sincrono da un InputStream per evitare problemi con la chiusura dello stream dopo l'inizializzazione dell'SDK.
  • Miglioramento dei messaggi di errore di confusione durante l'inizializzazione dell'SDK con un InputStream null o non InputStream .

Versione 4.1.1 - 1 febbraio 2017

Autenticazione

  • Risolto un problema di dipendenza che causava sempre un'eccezione al verifyIdToken() .

Versione 4.1.0 - 24 gennaio 2017

Inizializzazione

Autenticazione

  • Il metodo verifyIdToken() è rotto in questa versione e genera un'eccezione a causa di una dipendenza errata. Questo problema è stato risolto nella versione 4.1.1 .

Versione 4.0.4 - 17 gennaio 2017

  • Risolto il problema che causava la chiusura dei thread in Google App Engine dopo 24 ore, rendendo l'SDK non rispondente.
  • Risolti i problemi che causavano il fallimento dell'esecuzione di attività asincrone su istanze di Google App Engine ridimensionate automaticamente.

Autenticazione

  • Miglioramento dei messaggi di errore e aggiunta del supporto di App Engine per il metodo verifyIdToken() .

Database in tempo reale

  • Risolto il problema relativo alla race condition che poteva verificarsi quando venivano aggiunte nuove scritture mentre la connessione veniva chiusa.

Versione 4.0.3 - 6 dicembre 2016

Inizializzazione

Database in tempo reale

  • L'uso del metodo updateChildren() ora cancella solo le transazioni direttamente incluse nei percorsi aggiornati (non le transazioni nei percorsi adiacenti). Ad esempio, un aggiornamento su /move per una walk nodo figlio annullerà le transazioni su / , /move e /move/walk e in tutti i nodi figlio in /move/walk . Tuttavia, non annullerà più le transazioni sui nodi di pari livello, come /move/run .

Versione 4.0.2 - 15 novembre 2016

  • Questo aggiornamento ripristina la compatibilità di Java 7 per Admin Java SDK.

Versione 4.0.1 - 8 novembre 2016

  • Risolto il problema con una dipendenza mancante nel JAR 4.0.0 che impediva il funzionamento dell'API del database.
  • Questa versione è stata compilata per Java 8 e non supporta Java 7. È stato risolto nella versione 4.0.2 .

Versione 4.0.0 - 7 novembre 2016

  • Admin Java SDK (disponibile su Maven come firebase-admin ) sostituisce il pacchetto Maven firebase-server-sdk preesistente, che ora è obsoleto. Per iniziare, vedi Aggiungere l'SDK dell'amministratore di Firebase al server .
  • In questa versione manca una dipendenza che impedisce all'API di database di funzionare. Questo 4.0.1 stato risolto nella versione 4.0.1 .
  • Questa versione è stata compilata per Java 8 e non supporta Java 7. È stato risolto nella versione 4.0.2 .

Autenticazione

  • Il metodo createCustomToken() ora è asincrono, restituendo un'attività Task<String> anziché una String .