在服务器中使用Firebase存储

时间:2016-06-05 21:18:20

标签: java firebase storage

我从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

2 个答案:

答案 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;
}