gpt4 book ai didi

flutter - 热重装需要完成,应用才能运行

转载 作者:行者123 更新时间:2023-12-03 04:44:25 25 4
gpt4 key购买 nike

我正在开发一个使用Firebase和Stream的Flutter应用,如果Firebase中的数据为!= null,则该流将显示列表 View 。如果数据为空,则我的代码显示一个加载符号。每当我启动我的应用程序时,首先就会出现加载符号,并且直到我热重新加载应用程序后它才会消失。当我再次热重启时,我需要热重新加载以显示数据。如果我曾经发布过我的应用程序,那么这个问题会为用户引起,还是仅因为我处于模拟器的 Debug模式?如果发布应用程序时可能会出现此问题,那么有人知道如何解决此问题吗?
码:

  Widget MemoirsList() {
return SingleChildScrollView(
child: memoirsStream != null
? Column(
children: <Widget>[
StreamBuilder(
stream: memoirsStream,
builder: (context, snapshot) {
return ListView.builder(
padding: EdgeInsets.symmetric(horizontal: 16),
itemCount: snapshot.data.documents.length,
shrinkWrap: true,
physics: NeverScrollableScrollPhysics(),
itemBuilder: (context, index) {
return MemoirsCard(
authorName: snapshot.data.documents[index].data['authorName'],
title: snapshot.data.documents[index].data["title"],
description: snapshot.data.documents[index].data['description'],
imgUrl: snapshot.data.documents[index].data['imgURL'],
);
});
},
)
],
)
: Container(
alignment: Alignment.center,
child: CircularProgressIndicator(),
),
);
}

最佳答案

它肯定与 Debug模式有关。我也经常面对这个问题。尝试以 Release模式构建它,它应该可以正常工作。调试版本的应用程序大小很大,这是因为调试开销允许进行热重载和源代码级调试。
构建应用程序的发行版时,请考虑使用--split-debug-info标记。该标签可以大大减少代码大小。有关使用此标记的示例,请参见Obfuscating Dart code
您可以做的其他一些事情来使应用程序更小:

  • 删除未使用的资源
  • 最小化从库
  • 导入的资源
  • 支持有限数量的屏幕密度
  • 压缩PNG和JPEG文件

  • To build a release version for Android
    To build a release version for IOS

    关于flutter - 热重装需要完成,应用才能运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62542349/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com