Cloud Firestoreがそれほど更新されるのはなぜですか?[複製]

Aug 20 2020

私は物流倉庫のプロジェクトに取り組んでいます。アイデアは、ラック内のパレットを保管するためにCloud Firestoreを使用し、それをシステムに戻すことができるというものです。

アプリでパレットを見ることができ、うまく機能します。Cloud Firestoreの読み取り量は、1日あたり50.000回です。アプリを起動すると、リスト内のドキュメントの数が計算され、[使用状況]タブに表示されます。大丈夫ですが、アプリで何もしなくても数が増えます。

フラッターページが開いた場合にのみデータを読み取るソリューションはありますか?

import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:flutter/material.dart';

class overzicht extends StatefulWidget {
  @override
  _overzichtState createState() => _overzichtState();
}

class _overzichtState extends State<overzicht> {
  Future _data;
  Future getPosts() async{

    var firestore = Firestore.instance;
    QuerySnapshot qn = await firestore.collection("locaties").getDocuments();
    return qn.documents;
  }

  @override
  void initState() {
    super.initState();

    _data = getPosts();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Center(child: Text('Overzicht')),backgroundColor: Color.fromRGBO(17, 32, 42, 1),),
      body: Container(
        child: FutureBuilder(
            future: _data,
            builder: (_, snapshot) {
          if(snapshot.connectionState == ConnectionState.waiting){
            return Center(
              child: Text('Loading...'),
              );
          } else{
           return ListView.builder(
               itemCount: snapshot.data.length,
               itemBuilder: (_, index){
                 return ListTile(
                   title: Text(snapshot.data[index].data["location"]),
                 );
           });
          }
        }),
      ),
    );

  }
}

回答

1 Emmanuel Aug 20 2020 at 23:12

これはここの前に答えられました:

書き込みアクティビティがビジー状態のコレクション/ドキュメントでコンソールを開いたままにすると、コンソールはコンソールの表示を更新する変更を自動的に読み取ります。これは、予期しない読み取りの原因となることがよくあります。