在Android Studio 3.1及更高版本上,Flutter Hot Reload已损坏

时间:2018-04-23 11:46:25

标签: android-studio flutter

我最近更新到Android Studio 3.1.1,从那时起我开始使用Flutter Hot Reload 的小问题,但重新启动Android Studio似乎暂时修复了它。但是,大约几天前, Hot Reload 完全停止了工作。例如,这是我的终端输出:

gap@xop:~/Flutter/Projects/fibo$ flutter run
Launching lib/main.dart on HTC 10 in debug mode...
Initializing gradle...                                       1.0s
Resolving dependencies...                                   11.0s
Running 'gradlew assembleDebug'...                           2.8s
Built build/app/outputs/apk/debug/app-debug.apk (31.9MB).
Installing build/app/outputs/apk/app.apk...                  7.8s

它刚刚结束,有关使用rR进行热重新加载或完全重建的常规信息已不再存在。此外,我没有在Logcat中看到应用程序的日志,但如果选择无过滤器,我可以看到所有日志。

我做了什么:

  1. 升级到Android Studio 3.2 Canary 11
  2. Switched Flutter掌握并随后运行git pullflutter upgradeflutter doctor
  3. 重新启动Android Studio
  4. 完整系统重启。
  5. Android Studio信息:

    Android Studio 3.2 Canary 11
    Build #AI-181.3007.14.32.4720098, built on April 13, 2018
    JRE: 1.8.0_152-release-1136-b01 amd64
    JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
    Linux 4.13.0-38-generic
    

    颤振信息:

    Flutter 0.3.3-pre.13 • channel master • https://github.com/flutter/flutter.git
    Framework • revision fd7222eea8 (11 hours ago) • 2018-04-23 02:03:46 +0100
    Engine • revision cb3376c5de
    Tools • Dart 2.0.0-dev.48.0.flutter-fe606f890b
    

    系统信息:

    Ubuntu 17.04

    拜托,有没有解决这个问题?

4 个答案:

答案 0 :(得分:0)

  1. 确保Flutter Doctor不会显示任何问题。

  2. 尝试通过单击“调试”按钮而非“运行”按钮View Screenshot

  3. 来运行应用程序

答案 1 :(得分:0)

我遇到了同样的问题,我正在使用Unbuntu 19.04,并且我开始测试Flutter,安装所有依赖项,Android Studio,SDK等。

  • 第一个问题:我忘记了此命令:

    flutter doctor --android-licenses
    
  • 第二个问题:我有一个jdk-10,但我不知道这是问题所在。因此,我安装了openjdk-8-jdk,删除了前一个并打开了。

    sudo apt-get install openjdk-8-jdk
    

答案 2 :(得分:0)

这些步骤使热重启按钮在Android Studio中对我有用:

在项目目录的终端窗口中,运行以下命令:

  1. ContinueWith
  2. flutter emulators
  3. flutter emulators --launch <<your emulator name>>
  4. 以调试模式运行项目

答案 3 :(得分:0)

重构项目后,我遇到了同样的问题。我尝试了几种解决方案,但无济于事。然后花了几个小时查看我的消息源,我找到了解决方案。 因此,由于某种原因,当我将自定义窗口小部件之一从一个文件夹移动到另一个文件夹

我这样导入

import 'D:dev/projectname/app/common/bottom_navigation.dart';

代替这个

import 'package:app/common/bottom_navigation.dart';

修复错误的导入解决了我的问题。

不确定这种情况是否会经常发生,但是放在这里,也许会对某人有帮助