ファイアストアのデータを取得するルールを確立しようとしています。これは、Googleがクライアントにログインしてアクセスできます。私はこのルールを使用しているとき は、だから私が直面してる問題があるfirestore auth rule:Googleのクライアントにログインしました
match /helpers/customer/data/{document=**}{
allow read: if request.auth != null;
}
エラーがlogcatでポップ
ONFAILURE: Errorcom.google.firebase.firestore.FirebaseFirestoreException: PERMISSION_DENIED:不足または不十分なアクセス許可。私はパスが書き込みであることを意味し
match /helpers/customer/data/{document=**}{ allow read: if true; }
を使用していたときに
もそれだけで働いています。
GoogleSignInAccount acct = GoogleSignIn.getLastSignedInAccount(this);
if(acct != null){
Log.i(TAG, "onCreate: Database Working");
mFirestoreDB
.get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
for (DocumentSnapshot document : task.getResult()) {
Log.d(TAG, document.getId() + " => " + document.getData());
}
} else {
Log.d(TAG, "Error getting documents: ", task.getException());
}
}
});
}else{
Log.i(TAG, "onCreate: Database not Working");
}
私が必要とするのは、ログインしたユーザーのみがアクセスできるルールです。
エラーメッセージを表示するために必要な最小限のコードを含めるように質問を更新できますか? –
私はクエストインを更新しました – Ashish
'mFirestoreDB'はどのように初期化しますか?特定のコレクションを指していますか? –