我已经注意到这个问题与Flutter应用程序,当我打开一个Flutter应用程序从冷 Boot ,我看到一个黑屏弹出之前,实际的应用程序加载。我已经看到了NewsVoice制作应用程序的问题,以及我安装的一个测试应用程序。点击这里查看视频:https://www.youtube.com/watch?v=zszud6UWzps这是Flutter SDK中的一个bug吗?
https://www.youtube.com/watch?v=zszud6UWzps
sqserrrh1#
这个问题是fixed recently。如果您使用的Flutter版本有此引擎修复,您将不会看到黑框。(现在修复应该在Flutter master分支上,但不是alpha分支。
master
alpha
ljo96ir52#
<meta-data android:name="io.flutter.embedding.android.SplashScreenDrawable" android:resource="@drawable/my_splash" />
AndroidManifest.xml检查FlutterActivity并添加以下代码
xdyibdwo3#
这不是问题,这是热重装。别担心当你带着放松跑的时候,你看不到这些。如果你想确定,试试->Flutter释放
wko9yo5t4#
不是窃听器。这是它正常的行为方式。您可以使用图像替换加载黑屏:在AndroidManifest.xml中,您可以在此处更改启动图像。
<meta-data android:name="io.flutter.embedding.android.SplashScreenDrawable" android:resource="@drawable/launch_background" />
查找文件:android\app\src\main\res\drawable\launch_background.xmlandroid\app\src\main\res\drawable-v21\launch_background.xml更改文件以添加您自己的自定义图像:
<item> <bitmap android:gravity="center" android:src="@drawable/splash_image" /> </item>
您的启动图像应存储在可绘制文件夹中:android\app\src\main\res\drawable\splash_image.pngapp\src\main\res\drawable-v21\splash_image.png
ryoqjall5#
我可以解决这个问题,在使用Firebase时删除FutureBuilder。只需在main()上初始化Firebase应用程序,就像这样
main()
void main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); runApp(MyApp()); }
而不是在构建方法上使用FutureBuilder
inkz8wg96#
黑屏是因为各种各样的原因而出现的,这是我从网上看不同的React中收集到的。在我的例子中,我意识到一件事,我的Firebase.initializeApp()在我的FutureBuilder快照中返回了一个错误,因为没有任何小部件被渲染。我什么办法都试过了,但没有用。最后,我把我的项目移到了一个全新的文件夹中,如here所述然后我的黑屏问题就解决了。
kkbh8khc7#
这不是一个错误,这是一个实际的启动画面。要替换黑/白色屏幕,您可以参考此docs或
1.在终端上运行此命令
flutter pub add flutter_native_splash
这将向你的包的pubspec.yaml添加一行代码,并运行一个隐式的flutter pub get:
pubspec.yaml
dependencies: flutter_native_splash: ^2.2.19
2.如何设置启动画面
在项目的pubspec.yaml文件中,在dev_dependencies添加..
dev_dependencies
flutter_native_splash: color: "#FFA500" image: assets/logo.png // you need to have an image in the assets folder android: true ios: true
3.运行包
在终端中运行以下命令
flutter pub run flutter_native_splash:create
这将解决问题。
7条答案
按热度按时间sqserrrh1#
这个问题是fixed recently。如果您使用的Flutter版本有此引擎修复,您将不会看到黑框。(现在修复应该在Flutter
master
分支上,但不是alpha
分支。ljo96ir52#
AndroidManifest.xml检查FlutterActivity并添加以下代码
xdyibdwo3#
这不是问题,这是热重装。别担心当你带着放松跑的时候,你看不到这些。
如果你想确定,试试->
Flutter释放
wko9yo5t4#
不是窃听器。这是它正常的行为方式。您可以使用图像替换加载黑屏:
在AndroidManifest.xml中,您可以在此处更改启动图像。
查找文件:
android\app\src\main\res\drawable\launch_background.xml
android\app\src\main\res\drawable-v21\launch_background.xml
更改文件以添加您自己的自定义图像:
您的启动图像应存储在可绘制文件夹中:
android\app\src\main\res\drawable\splash_image.png
app\src\main\res\drawable-v21\splash_image.png
ryoqjall5#
我可以解决这个问题,在使用Firebase时删除FutureBuilder。只需在
main()
上初始化Firebase应用程序,就像这样而不是在构建方法上使用FutureBuilder
inkz8wg96#
黑屏是因为各种各样的原因而出现的,这是我从网上看不同的React中收集到的。在我的例子中,我意识到一件事,我的Firebase.initializeApp()在我的FutureBuilder快照中返回了一个错误,因为没有任何小部件被渲染。我什么办法都试过了,但没有用。最后,我把我的项目移到了一个全新的文件夹中,如here所述
然后我的黑屏问题就解决了。
kkbh8khc7#
这不是一个错误,这是一个实际的启动画面。要替换黑/白色屏幕,您可以参考此docs
或
1.在终端上运行此命令
这将向你的包的
pubspec.yaml
添加一行代码,并运行一个隐式的flutter pub get:2.如何设置启动画面
在项目的
pubspec.yaml
文件中,在dev_dependencies
添加..3.运行包
在终端中运行以下命令
这将解决问题。