Firebase アプリに基づく Android アプリを構築しています。他のユーザー アカウントを編集または削除できる管理者アカウントを作成できるようにしたいと考えています。私の理解が正しければ、Firebase Admin SDK でこれを実行できるはずです。だから私はここの指示に従いました。
アプリで Admin SDK をセットアップするには。build.app に以下を追加しました。
compile 'com.google.firebase:firebase-admin:4.1.1'
そして、私の Application クラスに、これを追加しました:
FileInputStream serviceAccount = null;
try {
serviceAccount = new FileInputStream("app/<MY-DATABASE>.json");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
if (serviceAccount != null) {
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredential(FirebaseCredentials.fromCertificate(serviceAccount))
.setDatabaseUrl("https://<MY-APP>.firebaseio.com/")
.build();
FirebaseApp.initializeApp(options);
}
ただし、次のように言っています。
- FirebaseOptions.Builder には setCredential() というメソッドがなく、
- FirebaseApp.initializeApp() は、FirebaseOptions ではなく Context オブジェクトを取ります。
ドキュメントによるとFirebaseOptions.Builder.setCredential()
、非推奨の に代わる新しいメソッドですFirebaseOptions.Builder.setServiceAccount()
。しかし、setServiceAccount()
存在しません。
何が起きてる?