Я пользуюсь облачным пожарным магазином во флаттере, который я сделал:
- подключил приложение с помощью firebase
- поместил google-сервисы. json в приложение build.gradle
- добавить зависимость и плагин
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
MyApp();
@override
Widget build(BuildContext context) {
// TODO: implement build
return MaterialApp(
title: 'کوردی پۆلی یەک',
theme: ThemeData(
primarySwatch: Colors.blueGrey,
),
home: MainScreen(),
);
}
}
class MainScreen extends StatelessWidget{
List<Widget> makeListWidget(AsyncSnapshot snapshot){
return snapshot.data.documents.map<Widget>((document){
return ListTile(
title: Text(document["name"]),
);
}).toList();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("کوردی پۆلی یەک",style: TextStyle(color: Colors.white),),
backgroundColor: Colors.deepOrange,
),
body: Container(
child: StreamBuilder(
stream: Firestore.instance.collection('lesson').snapshots(),
builder: (context,snapshot){
switch(snapshot.connectionState){
case ConnectionState.none:
return Center(child: Text('No data'));
case ConnectionState.waiting:
return Center(
child:CircularProgressIndicator());
default:
return ListView(
children:makeListWidget(snapshot),
);
}
},
),
),
);
}
}
Это просто загрузка, и когда я удаляю connectionState.waiting
выдает ошибку:
NoSuchMethodError: Получатель «документы» был назван нулевым. Получатель: null Пробный вызов