在做Flutter开发的时候,它带有热重启/重新加载的功能,但混合开发中在Android项目中集成了Flutter项目,Flutter的热重启/重新加载功能好像失效了,重启加载的步骤
-
打开一个模拟器,或连接一个设备到电脑上;
-
关闭我们的APP,然后运行flutter attach;
$ cd flutter_hybrid/flutter_module $ flutter attach Waiting for a connection from Flutter on Nexus 5X...
如果,你同时有多个模拟器或连接的设备,运行flutter attach会提示你选择一个设备:
ndroid SDK built for x86 • emulator-5554 • android-x86 • Android 8.1.0 (API 27) (emulator) iPhone X • 3E3FA943-715F-482F-B003-D46F5902C56C • ios • iOS 12.1 (simulator)
接下来我们需要flutter attach -d来指定一个设备: -d后面跟的设备ID。
flutter attach -d 'emulator-5554'
运行APP,然后你会看到:
$ flutter attach More than one device connected; please specify a device with the '-d' flag, or use '-d all' to act on all devices. Android SDK built for x86 • emulator-5554 • android-x86 • Android 8.1.0 (API 27) (emulator) iPhone X • 3E3FA943-715F-482F-B003-D46F5902C56C • ios • iOS 12.1 (simulator) jphdeMacBook-Pro:flutter_module jph$ flutter attach -d 'emulator-5554' Waiting for a connection from Flutter on Android SDK built for x86... Done. Syncing files to device Android SDK built for x86... 1,744ms ? To hot reload changes while running, press "r". To hot restart (and rebuild state), press "R". An Observatory debugger and profiler on Android SDK built for x86 is available at: http://127.0.0.1:60324/ For a more detailed help message, press "h". To detach, press "d"; to quit, press "q".
说明连接成功了,接下来就可以通过上面的提示来进行热加载/热重启了,在终端输入:
-
r : 热加载;
-
R : 热重启;
-
h : 获取帮助;
-
d : 断开连接;
调试Dart代码
混合开发的模式下,高效调试代码的方式:
-
关闭APP
-
点击AndroidStudio的Flutter Attach按钮(需要首先安装Flutter与Dart插件)
-
启动APP



