0

我是新来的。我已经使用颤振和 Firestore 构建了该应用程序。我正在使用流生成器获取数据列表。在 Stream builder 中,我使用 ListView.builder() 来展示内容。

问题是在调试 apk 中一切正常,但在发布 apk 或应用程序包中 ListView 不显示任何内容。它和空的可滚动内容。

我也成功签署了apk。我试过这个,因为我觉得签名的 apk 可能是个问题。但是,结果是一样的。

4

1 回答 1

2

这些是应用程序处于发布模式并且仍然显示灰屏时可能出现的问题。

1-确保firebase和flutter绑定在main中初始化。如果您不使用 firebase,请忽略 firebase 代码。您需要将 async 添加到您的 main 中,如下例所示,然后在返回 runApp 的代码的其他部分

void main() async {
    WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
}

2-检查是否授予应用程序互联网权限。如果未提供 Internet 权限,则会出现灰屏错误AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET"/>

3-如果您在调试模式下运行应用程序,那么如果调试器或终端出现任何错误,那么您必须解决该问题。与 ListView 构建器一起犯错误是很常见的,比如如果你用一些容器包装它并展开或使用堆栈等,它可能在调试中工作,但在发布时它不会。

为了避免像数字 3 中描述的问题,在--release模式下运行应用程序,因为发布模式会捕获此类错误,这些错误应该在发布应用程序后出现在真实设备上

flutter run --release 
于 2022-02-24T21:43:15.733 回答