以下版本的 Admin SDK 中引入了一些影响兼容性的变化:
- Java SDK 6.0.0
- Go SDK 3.0.0
影响面较大的变化是移除了 Java Task
接口,并用 ApiFuture 接口取而代之。
此外,以下功能也发生了变化:
- 为 Java SDK 指定授权凭据
- 配置实时数据库日志级别
- 使用 Go 创建自定义令牌并验证 ID 令牌
Admin Java SDK (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");
如需了解此项变化的详细说明和高级使用场景示例,请参阅使用 Admin 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 配置日志记录功能
您无法再使用 FirebaseDatabase.setLogLevel()
API。直接使用 SLF4J 即可为整个 SDK 配置日志记录功能。
此项变化意味着,现在无需更改代码即可配置日志记录功能。如需了解详情,请参阅适用于 Firebase 和 Google Cloud 的 Java 库中的日志记录功能。
升级前
FirebaseDatabase.getInstance()
.setLogLevel(Logger.Level.DEBUG);
升级后
- 将
slf4j-simple.jar
添加到项目类路径。 - 为 JVM 设置
-Dorg.slf4j.simpleLogger.defaultLogLevel=debug
系统属性。 - 要详细了解如何使用其他日志记录框架(如 Log4J 和
java.util.logging
),请参阅 SLF4J 文档。
Admin Go SDK 3.0.0
auth.Client for Go 中的更改
CustomToken
和 CustomTokeWithClaims
方法现在可接受上下文参数,就像大多数现有的 Go API 一样。
升级前
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)