Check out what’s new from Firebase at Google I/O 2022. Learn more

Руководство по переносу Admin SDK

В следующих версиях Admin SDK представлено ограниченное количество критических изменений:

  • Java SDK 6.0.0
  • Перейти SDK 3.0.0

Наиболее заметным изменением является удаление интерфейса Java Task , который заменяется интерфейсом ApiFuture .

Кроме того, в эти функции внесены изменения:

  • Указание учетных данных авторизации для Java SDK
  • Настройка уровней журнала базы данных реального времени
  • Создание пользовательских токенов и проверка токенов ID в Go

Пакет SDK для администратора Java (6.0.0)

Используйте ApiFuture вместо Task

Устаревший интерфейс Task был удален. Если ваше приложение использует этот интерфейс, обновите его, чтобы использовать интерфейс ApiFutures . Например:

До

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

После

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

// Or

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

Подробное обсуждение этого изменения с расширенными примерами использования см. в разделе Асинхронные операции с административным Java SDK .

Перенос FirebaseCredentials в GoogleCredentials

FirebaseCredential и FirebaseCredentials больше не доступны. Чтобы указать учетные данные авторизации для SDK, используйте GoogleCredentials . Например:

До

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();

После

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();

Используйте SLF4J для настройки ведения журнала

API FirebaseDatabase.setLogLevel() больше недоступен. Используйте SLF4J напрямую, чтобы настроить ведение журнала для всего пакета SDK.

Это изменение означает, что ведение журнала теперь можно настроить без изменения кода. Дополнительные сведения см. в разделе Ведение журналов в библиотеках Java для Firebase и Google Cloud .

До

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

После

  • Добавьте slf4j-simple.jar в путь к классам проекта.
  • Задайте системное свойство -Dorg.slf4j.simpleLogger.defaultLogLevel=debug для JVM.
  • Обратитесь к документации SLF4J для получения подробной информации об использовании других фреймворков журналирования, таких как Log4J и java.util.logging .

Администратор Go SDK 3.0.0

Изменения в auth.Client for Go

CustomToken и CustomTokeWithClaims теперь принимают аргумент контекста, как и большинство существующих API Go.

До

token, err := CustomToken("uid")

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

result, err := VerifyIDToken(idToken)

После

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

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

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