我从past thread了解到,可以从新的server SDK访问用于普通JVM的Firebase数据库。所以现在我可以将Firebase Database SDK用于我的JavaFX项目,但是如何使用Storage SDK呢?
可悲的是,Firebase Storage doc没有提及在服务器中设置存储的任何事情。 com.google.firebase:firebase-server-sdk:[3.0.0,)
或com.google.firebase:firebase-server-sdk:3.0.1
也无法提供StorageReference。
答案 0 :(得分:6)
Firebase Storage没有服务器SDK,但由于它是由Google云端存储支持的,因此您可以使用GCS服务器SDK。以下是从{Java>访问它的GCS docs。
答案 1 :(得分:0)
在Gradle文件中添加compile 'com.google.cloud:google-cloud-storage:1.7.0'
或latest java library
如果存储网址为gs://some-bucket-name.appspot.com/directory/some_blob.zip
,则STORAGE_BUCKET必须为some-bucket-name.appspot.com
和路径应为directory/some_blob.zip
private long getSize(String path) {
Storage storage = StorageOptions.newBuilder()
.setProjectId(STORAGE_BUCKET)
// Optionally Add credentials
//.setCredentials(GoogleCredentials.fromStream(new FileInputStream(jsonFile)))
.build()
.getService();
// Optional third parameter to limit fields returned, just getting size for my use case
Blob blob = storage.get(STORAGE_BUCKET, path, Storage.BlobGetOption.fields(Storage.BlobField.SIZE));
if (blob != null) {
return blob.getSize();
}
return 0;
}