Guía de migración del SDK de Admin

Las siguientes versiones de los SDK de Admin presentan una cantidad limitada de cambios rotundos:

  • SDK para Java 6.0.0
  • SDK para Go 3.0.0

El cambio con el impacto más amplio es la eliminación de la interfaz Task Java, que se reemplazó por ApiFuture.

Además, se realizarán cambios en estas funciones:

  • Especificación de las credenciales de autorización del SDK de Java
  • Configuración de los niveles de registro de Realtime Database
  • Creación de tokens personalizados y verificación de tokens de ID en Go

SDK de Admin para Java (6.0.0)

Usa ApiFuture en lugar de Task

Se quitó la interfaz Task obsoleta. Si tu app utiliza esta interfaz, actualízala para que use la interfaz ApiFutures. Por ejemplo:

Antes

Task<String> customToken = FirebaseAuth.getInstance()
    .createCustomToken("uid");

Después

String customToken = FirebaseAuth.getInstance()
    .createCustomToken("uid");

// Or

ApiFuture<String> customToken = FirebaseAuth.getInstance()
    .createCustomTokenAsync("uid");

Para obtener información detallada sobre este cambio con ejemplos de casos de uso avanzados, consulta Operaciones asíncronas con el SDK de Admin Java.

Migra FirebaseCredentials a GoogleCredentials

FirebaseCredential y FirebaseCredentials ya no están disponibles. Si quieres especificar credenciales de autorización para el SDK, usa GoogleCredentials en su lugar. Por ejemplo:

Antes

FirebaseCredential credential = FirebaseCredentials.fromCertificate(stream);
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredential(credential)
    .build();

FirebaseCredential credential = FirebaseCredentials.applicationDefault();
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredential(credential)
    .build();

Después

GoogleCredentials credentials = GoogleCredentials.fromStream(stream);
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredentials(credentials)
    .build();

GoogleCredentials credentials = GoogleCredentials.getApplicationDefault();
FirebaseOptions options = new FirebaseOptions.Builder()
    .setCredentials(credentials)
    .build();

Usa SLF4J para configurar el registro

La API de FirebaseDatabase.setLogLevel() ya no está disponible. Usa SLF4J directamente para configurar el registro del SDK completo.

Este cambio permite que ahora se pueda configurar el registro sin modificar el código. Para obtener más información, consulta cómo registrar bibliotecas de Java en Firebase y Google Cloud Platform.

Antes

FirebaseDatabase.getInstance()
 .setLogLevel(Logger.Level.DEBUG);

Después

  • Agrega slf4j-simple.jar a la ruta de clase del proyecto.
  • Establece la propiedad del sistema -Dorg.slf4j.simpleLogger.defaultLogLevel=debug para la JVM.
  • Consulta la documentación de SLF4J para obtener información sobre cómo usar otros marcos de trabajo de registro como Log4J y java.util.logging.

SDK de Admin para Go 3.0.0

Cambios en auth.Client para Go

Los métodos CustomToken y CustomTokeWithClaims ahora consideran un argumento de contexto, como la mayoría de las API de Go existentes.

Antes

token, err := CustomToken("uid")

token, err := CustomToken("uid", claimsMap)

result, err := VerifyIDToken(idToken)

Después

token, err := CustomToken(context.Background(), "uid")

token, err := CustomTokenWithClaims(context.Background(), "uid", claimsMap)

result, err := VerifyIDToken(context.Background(), idToken)