实例化Firestore客户端时收到此警告。
fs = FirestoreClient.getFirestore();
该解决方案随附警告,用于通过以下方式实例化客户端:
FirestoreOptions options =
FirestoreOptions.newBuilder().setTimestampsInSnapshotsEnabled(true).build();
Firestore firestore = options.getService();
这样做建议,在正确实例化默认Firebase应用程序后,我会从options.getService()
中得到空引用。仅适用于Firebase管理员SDK Java版本。隐藏了NodeJs版本的警告。
根据Java版本的文档,我不需要新的构建器,至少我可以找到它。
当前软件包版本(来自gradle构建文件):
compile 'com.google.firebase:firebase-admin:6.7.0'
更新:
我现在注意到createTime属性返回的是时间戳而不是日期,因此无论客户端初始化的方式如何,行为似乎都已更改。
答案 0 :(得分:1)
对于Admin SDK,您应该通过FirebaseOptions
来查看该选项。
FirebaseOptions options =
FirebaseOptions.builder()
.setCredentials(credentials)
.setFirestoreOptions(FirestoreOptions.newBuilder()
.setTimestampsInSnapshotsEnabled(true)
.build())
.build();
FirebaseApp.initializeApp(options);
Firestore db = FirestoreClient.getFirestore();