Flutter - Stream Builder 在发布 apk 中不显示任何内容,但在调试 apk 中工作正常
Flutter - Stream Builder does not show any content in release apk, but works fine in debug apk
我是 Flutter 新手。我已经使用 flutter 和 firestore 构建了应用程序。我正在使用流生成器获取数据列表。在 Stream 构建器中,我使用 ListView.builder() 来展示内容。
问题是在调试 apk 中一切正常,但在发布 apk 或应用程序包中,ListView 不显示任何内容。它和空的可滚动内容。
我也成功签署了apk。我试过这个,因为我觉得签名的 apk 可能是个问题。但是,结果还是一样。
这些是当应用程序处于发布模式并且仍然出现灰屏时可能出现的问题。
1- 确保 firebase 和 flutter 绑定在 main 中初始化。如果您不使用 firebase,请忽略 firebase 代码。您需要像下面的示例一样将异步添加到您的 main 中,然后是 return 运行App
代码的其他部分
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
}
2- 检查是否为应用程序授予了互联网权限。如果在 AndroidManifest.xml
中未提供互联网许可,则会出现灰屏错误
<uses-permission android:name="android.permission.INTERNET"/>
3- 如果您 运行 应用程序处于调试模式,那么如果调试器或终端出现任何错误,则您必须解决该问题。在 ListView 构建器中犯错误是很常见的,比如如果你用一些容器包装它并展开或用堆栈等它可能在调试中工作但在发布中它不会。
为了避免第 3 运行 中所述的问题,应用程序处于 --release
模式,因为发布模式会捕获此类错误,这些错误应该在发布应用程序后出现在真实设备上
flutter run --release
我是 Flutter 新手。我已经使用 flutter 和 firestore 构建了应用程序。我正在使用流生成器获取数据列表。在 Stream 构建器中,我使用 ListView.builder() 来展示内容。
问题是在调试 apk 中一切正常,但在发布 apk 或应用程序包中,ListView 不显示任何内容。它和空的可滚动内容。
我也成功签署了apk。我试过这个,因为我觉得签名的 apk 可能是个问题。但是,结果还是一样。
这些是当应用程序处于发布模式并且仍然出现灰屏时可能出现的问题。
1- 确保 firebase 和 flutter 绑定在 main 中初始化。如果您不使用 firebase,请忽略 firebase 代码。您需要像下面的示例一样将异步添加到您的 main 中,然后是 return 运行App
代码的其他部分void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
}
2- 检查是否为应用程序授予了互联网权限。如果在 AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET"/>
3- 如果您 运行 应用程序处于调试模式,那么如果调试器或终端出现任何错误,则您必须解决该问题。在 ListView 构建器中犯错误是很常见的,比如如果你用一些容器包装它并展开或用堆栈等它可能在调试中工作但在发布中它不会。
为了避免第 3 运行 中所述的问题,应用程序处于 --release
模式,因为发布模式会捕获此类错误,这些错误应该在发布应用程序后出现在真实设备上
flutter run --release