构建Flutter App的APK后为什么出现灰屏?

时间:2020-09-12 15:34:24

标签: android android-studio flutter dart

几天前,我开始使用Flutter for Beginners Tutorial by TheNetNinja学习Flutter,今天我已经完成了该课程。 因此,我想构建我们制作的应用并将其安装在手机上,然后从Android Studio工具栏的 Build> Flutter> Build APK 进行安装,然后将给定的APK安装在手机上,只有灰色的屏幕。

我一直在互联网上寻找解决方案,在某处我读到这是因为APK未签名。 因此,我尝试在单独的窗口中打开 android 文件夹(使用 Tools> Flutter>在Android Studio中打开Android模块)并从那里构建一个签名的APK,但它仍然没有不行。

在那之后,我在其他地方读到,我得到的灰色屏幕可能等同于代码中存在一些错误时出现的红色错误屏幕(使用Android Studio的“播放”按钮和模拟器测试应用程序),但是问题是我没有出现任何红色屏幕,并且使用“调试版本”时,我的应用程序可以正常工作。

所以现在我在这里,寻求帮助,希望能迅速解决此问题。

PS:如果需要,这是我的代码:https://github.com/LeonardoMantovani/flutter-tutorial

编辑:这是 flutter doctor -v 的输出:

[√] Flutter (Channel stable, 1.20.3, on Microsoft Windows [Versione 10.0.19041.508], locale it-IT)
• Flutter version 1.20.3 at C:\src\flutter
• Framework revision 216dee60c0 (11 days ago), 2020-09-01 12:24:47 -0700
• Engine revision d1bc06f032
• Dart version 2.9.2


[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at C:\Users\leona\AppData\Local\Android\Sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = C:\Users\leona\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Android Studio (version 4.0)
    • Android Studio at C:\Program Files\JetBrains\Toolbox\apps\AndroidStudio\ch-0\193.6626763
    • Flutter plugin version 48.1.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[!] VS Code, 64-bit edition (version 1.44.2)
    • VS Code at C:\Program Files\Microsoft VS Code
    X Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[√] Connected device (1 available)
    • Android SDK built for x86 64 (mobile) • emulator-5554 • android-x64 • Android 9 (API 28) (emulator)

! Doctor found issues in 1 category.

1 个答案:

答案 0 :(得分:1)

在app / src / main / AndroidManifest.xml中添加<uses-permission android:name="android.permission.INTERNET"/>