Future<void> _getUserData() async {
final database = Firestore.instance;
try {
FirebaseUser _currentUser = await FirebaseAuth.instance.currentUser();
String authid =_currentUser.uid;
String email = _currentUser.email;
Map<String, String> userData = {
'AuthUserId':'$authid',
'Email':'$email',
'FullName': '',
'MobileNum': '',
'Address': '',
'City/Village': '',
'District': '',
'State': '',
'PinCode': '',
};
database.collection('UserData').add(userData).catchError((e) {
print(e);
});
} catch (e) {
print(e);
}
}
@override
void initState() {
super.initState();
_getUserData();
}
“”我正在尝试将数据插入云存储区,并且我已经在initState()中调用了此函数,但是如上所述,我很容易出错
答案 0 :(得分:7)
确保您使用的是最新的cloud_firestore
版本。然后执行:
flutter clean
flutter packages get
答案 1 :(得分:3)
对于我的情况,我执行了以下步骤:
flutter clean
flutter packages get
卸载应用
更新:/android/app/build.gradle
defaultConfig {
...
multiDexEnabled true
}
再次运行。
希望这会有所帮助
答案 2 :(得分:2)
我关闭了IDE(Android Studio),然后执行了flutter clean
。之后,我重新启动了IDE并创建了一个新的AVD。之后,缺少MissingPluginException,我遇到了以下错误:
D8: Cannot fit requested classes in a single dex file
我修复了在/android/app/build.gradle中将multiDexEnabled true
添加到defaultConfig
defaultConfig {
...
multiDexEnabled true
}
我不知道这是否与您的问题有关,但这就是我解决错误的方法。
答案 3 :(得分:0)
停止正在运行的应用程序,然后重新运行。这可能是因为您已在应用程序已经在调试模式下运行时添加了firestore依赖项。在这种情况下,如果您调用新添加的依赖项的方法,则热重载或重新启动将不起作用。您必须停止正在运行的应用程序并重新运行。 (这解决了我的问题)。
在重新运行之前执行此操作。 -扑扑干净 -颤振包获取
答案 4 :(得分:0)
我的问题是由于我在使用上一页中的Firestore后无法编辑Firebase实例设置引起的,而在删除该文件夹之前,它没有给我正确的错误
%AppData%\Local\Pub\Cache\hosted\pub.dartlang.org\firebase_core_platform_interface-2.0.0
然后正确地给了我错误,所以我只应用了main.dart中的设置
Widget build(BuildContext context)
{
return FutureBuilder(
future: Firebase.initializeApp(),
builder: (context, snapshot)
{
if (snapshot.hasError) {
return Text('error');
}
if (snapshot.connectionState == ConnectionState.done) {
FirebaseFirestore.instance.settings = Settings(
persistenceEnabled: true,
cacheSizeBytes: Settings.CACHE_SIZE_UNLIMITED,
);
return MaterialApp(....
}
}
);
}
答案 5 :(得分:0)
如果您正在使用Visual Studio Code,并且正在IOS模拟器上运行项目,则该项目可能无法正常工作。您可以从Xcode运行您的项目,它可以毫无问题地工作,您必须打开.xcworkspace文件。