Tag: firebase admin

Firebase Admin Java SDK没有执行任何操作

我已使用本指南设置了firebase管理SDK 所以我用以下方式初始化它。 InputStream refreshToken = new ClassPathResource(CONFIG_FILE).getInputStream(); FirebaseOptions options = new FirebaseOptions.Builder() .setCredential(FirebaseCredentials.fromRefreshToken(refreshToken)) .setDatabaseUrl(“https://.firebaseio.com/”) .build(); FirebaseApp.initializeApp(options); 到目前为止我没有错误,一切似乎都很好。 但是,我无法进行任何操作。 调用方法什么都不做。 例如: FirebaseDatabase.getInstance() .getReference() .addListenerForSingleValueEvent(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { //this callback is never called } @Override public void onCancelled(DatabaseError databaseError) { } }); 要么 class Pojo { public Pojo(String name, String surname) { […]

Spring启动时的Firebase在初始化期间出错

我正在尝试在Spring Boot应用程序中设置Firebase。 我正在按照文档中给出的代码片段进行操作。 这就是我的pom看起来的样子: com.google.firebase firebase-admin 5.2.0 我用来初始化firebase的代码: @PostConstruct public void init() { InputStream serviceAccount = FirebaseConfig.class.getClassLoader().getResourceAsStream(configPath); FirebaseOptions options = null; try { options = new FirebaseOptions.Builder() .setCredential(FirebaseCredentials.fromCertificate(serviceAccount)) .setDatabaseUrl(databaseUrl) .build(); } catch (IOException e) { e.printStackTrace(); } FirebaseApp.initializeApp(options); } 在启动时, FirebaseApp.initializeApp会抛出以下错误: [错误] RunLoop:Firebase数据库runloop(5.2.0)中未捕获的exception。 请向firebase-database-client@google.com报告java.lang.NoSuchMethodError:org.json.JSONStringer.object()Lorg / json / JSONWriter; com.google.firebase下面的com.google.firebase.database.util.JsonMapper.serializeJsonValue(JsonMapper.java:72)com.google.firebase.database.util.JsonMapper.serializeJsonValue(JsonMapper.java:61) .util.JsonMapper.serializeJson(JsonMapper.java:41) 我试图包括org.json但没有运气。

使用Google云端存储从Firebase存储中删除文件夹

我想删除文件夹“test”及其中的所有内容。 我很幸运能够使用以下代码在终端中删除FirebaseStorage中的文件夹及其所有内容/子文件夹: gsutil rm -r gs://bucketname.appspot.com/test/** 但是,当我尝试在java中执行此操作时,它不起作用。 Storage storage = StorageOptions.getDefaultInstance().getService(); String bucketName = “bucketname.appspot.com/test”; Bucket bucket = storage.get(bucketName); bucket.delete(Bucket.BucketSourceOption.metagenerationMatch()); 它抛出了这个exception: Exception in thread “FirebaseDatabaseEventTarget” com.google.cloud.storage.StorageException: Invalid bucket name: ‘bucketname.appspot.com/test’ at com.google.cloud.storage.spi.DefaultStorageRpc.translate(DefaultStorageRpc.java:202) at com.google.cloud.storage.spi.DefaultStorageRpc.get(DefaultStorageRpc.java:322) at com.google.cloud.storage.StorageImpl$4.call(StorageImpl.java:164) at com.google.cloud.storage.StorageImpl$4.call(StorageImpl.java:161) at com.google.cloud.RetryHelper.doRetry(RetryHelper.java:179) at com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:244) at com.google.cloud.storage.StorageImpl.get(StorageImpl.java:160) at xxx.backend.server_request.GroupRequestManager.deleteGroupStorage(GroupRequestManager.java:119) at xxx.backend.server_request.GroupRequestManager.deleteGroup(GroupRequestManager.java:26) at xxx.backend.server_request.ServerRequestListener.onChildAdded(ServerRequestListener.java:27) at com.google.firebase.database.core.ChildEventRegistration.fireEvent(ChildEventRegistration.java:65) at com.google.firebase.database.core.view.DataEvent.fire(DataEvent.java:49) at […]

在Google App Engine上validationFirebase令牌

我正在Google App Engine上开发一个应用程序。 我正在使用Cloud Endpoints在Google App Engine的后端Android应用程序之间进行通信。 Android客户端使用Firebase身份validation,并在每次调用时将Firebase令牌发送到Cloud Endpoints。 在Google App Engine中,我使用以下代码validationFirebase令牌。 我使用的是Firebase Admin SDK 4.0.3 Task authTask = FirebaseAuth.getInstance().verifyIdToken(token); try { Tasks.await(authTask); } catch (ExecutionException | InterruptedException e ) { log.severe(e.getMessage()); } FirebaseToken decodedToken = authTask.getResult(); 任务的执行正在Google App Engine后端任务中运行,但遗憾的是,此后端实例未关闭,因此我超出了我的免费配额限制。 那么有人可以给我一个提示如何在令牌validation后关闭后端实例吗?