В разрешениях Flterster Firestore отказано - PullRequest
0 голосов
/ 15 октября 2018

У меня есть общедоступные разрешения для моего приложения Flutter Android.

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write;
    }
  }
}

Но когда я пытаюсь запросить данные следующим образом:

class MyHome extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Firestore App"),
        centerTitle: true,
      ),
      body: StreamBuilder(
        stream: Firestore.instance.collection("mydata").snapshots(),
        builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
          if (!snapshot.hasData) return CircularProgressIndicator();

          return FirestoreListview(documents: snapshot.data.documents);
        },
      ),
    );
  }
}

class FirestoreListview extends StatelessWidget {
  final List<DocumentSnapshot> documents;

  FirestoreListview({this.documents});

  @override
  Widget build(BuildContext context) {
    return ListView.builder(
      itemCount: documents.length,
      itemExtent: 90.0,
      itemBuilder: (BuildContext context, int index){

        String name = documents[index].data["title"].toString();

            return Text(name);

      },
    );
  }
}

Я получаю это ..

W/Firestore(12477): (0.6.6-dev) [Firestore]: Listen for Query(flutter_data) failed: Status{code=PERMISSION_DENIED, description=Missing or insufficient permissions., cause=null}
I/System.out(12477): com.google.firebase.firestore.FirebaseFirestoreException: PERMISSION_DENIED: Missing or insufficient permissions.

Я пытался воссоздать проект Flutter и приложение Firebase, но проблема все еще возникала.С такими же настройками у меня есть работающий проект Android-приложения, но он не работает.Я пытался с прошлых 5 часов, но я не могу понять, что является реальной проблемой?

1 Ответ

0 голосов
/ 15 марта 2019

в моем случае, это все из-за конфигурации правил базы данных Firebase.Изменились ниже правила моего тестирования, и он начал работать.(не рекомендуется)

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write;
    }
  }
}

Перед выпуском установите правильное разрешение на доступ к вашей базе данных.

...