Android 如何在flatter中创建流提供者

Android 如何在flatter中创建流提供者,android,ios,flutter,dart,Android,Ios,Flutter,Dart,我做了很多搜索,但没有任何帮助来消除错误 这是我的密码: main.dart 类MyApp扩展了无状态小部件{ @凌驾 小部件构建(构建上下文){ 返回StreamProvider.value( 值:AuthService()。用户, 孩子:MaterialApp( 主:Wrapper(), ), ); } } 下面是我创建流的身份验证服务: 验证省道 //基于fireBase用户创建用户对象 用户\u userFromFireBaseUser(FirebaseUser用户){ 返回用户!=n

我做了很多搜索,但没有任何帮助来消除错误

这是我的密码:

main.dart

类MyApp扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回StreamProvider.value(
值:AuthService()。用户,
孩子:MaterialApp(
主:Wrapper(),
),
);
}
}
下面是我创建流的身份验证服务:

验证省道

//基于fireBase用户创建用户对象
用户\u userFromFireBaseUser(FirebaseUser用户){
返回用户!=null?用户(uid:user.uid):null;
}
//验证更改流
流获取用户{
返回_auth.onAuthStateChanged
.map(_userFromFireBaseUser);
}
最后,这里是如何将其添加到我的
包装中的:

包装器.省道

类包装扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
//最终用户=提供者(上下文);
最终loggedUser=Provider.of(上下文);
打印(loggedUser);
返回Authenticate();
}
}
它返回以下错误:

Error: Could not find the correct Provider<User> above this Wrapper Widget

To fix, please:

  * Ensure the Provider<User> is an ancestor to this Wrapper Widget
  * Provide types to Provider<User>
  * Provide types to Consumer<User>
  * Provide types to Provider.of<User>()
  * Ensure the correct `context` is being used.
错误:在此包装程序小部件上方找不到正确的提供程序
若要修复,请执行以下操作:
*确保提供程序是此包装程序小部件的祖先
*向提供程序提供类型
*向消费者提供类型
*为Provider.of()提供类型
*确保使用了正确的“上下文”。

您正在直接调用包装器类

runApp(Wrapper());
取而代之的是

runApp(MyApp());

您是否尝试过将StreamProvider向上移动一级到runApp方法中?@FederickJonathan尝试了相同的错误,但得到了相同的错误。。正如我所知,使用
returnuser!=无效的用户(uid:User.uid):空与您的代码相同我正在遵循相同的教程,当我用我的代码替换您的代码时,我得到了相同的错误。我也处于进退两难的境地,它是如何发生的。你试过完全重启吗@AhmedWagdi@VirenVVarasadiya我甚至卸载了应用程序,然后重新安装。同样的结果!问这个问题真的很愚蠢,但是,您的_auth变量在auth.dart和final FirebaseAuth中_auth=FirebaseAuth.instance?