我正在构建一个 Flutter 应用程序并且我已经集成了 Firebase,但是当我点击一个按钮来注册、登录或注销时,我不断收到这个错误。我见过其他人问过同样的问题,但似乎没有一个对我有用。我正在使用 Flutter 和Android Studio。我该如何解决这个问题?
这是我的代码的摘录
class HomeScreen extends StatefulWidget {
@override
_HomeScreenState createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.red,
body: Center(
child: Container(
child: RaisedButton(
onPressed: () {
FirebaseAuth.instance.signOut().then((value) {
Navigator.pushReplacement(
context,
MaterialPageRoute(
builder: (context) =>
LoginScreen()));
});
},
child: Text("Logout"),
)
)
)
);
}
}
Run Code Online (Sandbox Code Playgroud)
下面是抛出的异常
class HomeScreen extends StatefulWidget {
@override
_HomeScreenState createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> { …Run Code Online (Sandbox Code Playgroud) Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 5 more
Run Code Online (Sandbox Code Playgroud)
运行 flutter doctor --android-licenses 时出现上述错误。有谁知道为什么会发生这种情况以及我该如何解决?我已经在颤振控制台上运行它。
我注意到我的项目中出现了新的 lint 问题。
长话短说:
我需要在我的自定义类中使用 BuildContext
flutter lint 工具与 aysnc 方法一起使用时并不满意。
例子:
MyCustomClass{
final buildContext context;
const MyCustomClass({required this.context});
myAsyncMethod() async {
await someFuture();
# if (!mounted) return; << has no effect even if i pass state to constructor
Navigator.of(context).pop(); # << example
}
}
Run Code Online (Sandbox Code Playgroud) dart flutter flutter-dependencies flutter-state flutter-build
在我的flutter项目中,我对插件进行了一些更新,然后使用flutter升级。之后,每当我运行我的 flutter 项目时,它都会显示以下错误-
/C:/src/flutter/flutter/.pub-cache/hosted/pub.dartlang.org/platform-3.0.2/lib/src/interface/local_platform.dart:46:19: Error: Member not found: 'packageRoot'.
io.Platform.packageRoot; // ignore: deprecated_member_use
^^^^^^^^^^^ FAILURE: Build failed with an exception.
* Where: Script 'C:\src\flutter\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 1102
* What went wrong: Execution failed for task ':app:compileFlutterBuildDebug'.
> Process 'command 'C:\src\flutter\flutter\bin\flutter.bat'' finished with non-zero exit value 1
* Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org …Run Code Online (Sandbox Code Playgroud) 我收到以下错误:
即,抛出了另一个异常:ParentDataWidget 的错误使用。在手机屏幕上显示错误。
@override
Widget build(BuildContext context) {
return MaterialApp(
title: widget.title,
theme: ThemeData.light().copyWith(
platform: _platform ?? Theme.of(context).platform,
),
home: DefaultTabController(
length: categoryNames.length,
child: Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: SafeArea(
child: Column(
children: <Widget>[
Chewie(
controller: _chewieController,
),
TabBar(
labelColor:Colors.black,
tabs: categoryNames,
),
Expanded(
child: TabBarView(
children: [
ImageList()
],
),
)
/*TabBarView(
children: [
Icon(Icons.directions_car),
Icon(Icons.directions_transit),
Icon(Icons.directions_bike),
],
)*/
],
)
),
),
),
);
}
Run Code Online (Sandbox Code Playgroud)
这是我的代码,请检查并让我知道问题。
我收到此错误:
未找到成员:“FirebaseAppPlatform.verifyExtends”。FirebaseAppPlatform.verifyExtends(_delegate);
flutter clean
flutter pub get
pod install
Run Code Online (Sandbox Code Playgroud) 当我尝试运行 Flutter 项目时,出现如下错误:
../../../.pub-cache/hosted/pub.dev/file-6.1.2/lib/src/interface/file.dart:15:16:错误:方法“File.create”有命名参数比重写方法“File.create”的命名参数少。未来创建({布尔递归= false});
跑步flutter clean并flutter upgrade没有帮助。怎么了?我该如何解决?