Горячая перезагрузка бета-версии Flutter в VSCode работает для Интернета, но не iOS и Android (что работает в Android studio) - PullRequest
0 голосов
/ 12 июля 2020

Я использую Ma c Catalina, и у меня установлены Android Studio и VSCode

❯ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, 1.19.0-4.3.pre, on Mac OS X 10.15.5 19F101, locale en-GB)
 
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.0)
[✓] VS Code (version 1.47.0)
[✓] Connected device (3 available)

• No issues found!

У меня очень простое приложение

import 'package:flutter/material.dart';

void main() {
  runApp(
    MaterialApp(
      home: Center(
        child: Text("Hello World!"),
      ),
    ),
  );
}

Если я запустил app из Android Studio, то горячая перезагрузка работает нормально, например, изменение текста и сохранение обновит текст на любом из устройств (iOS, Android или Chrome).

Но если Я делаю то же самое в VSCode, т.е. F5 (Debug: Start debugging), тогда горячая перезагрузка работает только для Интернета. Глядя в консоль отладки, я вижу следующее каждый раз, когда вношу изменения и сохраняю.

Reloaded 1 of 502 libraries in 167ms.

Но на экране нет обновлений (кроме случаев, когда запущено Chrome, где вывод в консоли отладки выглядит так же, как с другими.). Я нахожу это очень странным!

Обновление

Я открыл отчет об ошибке на dart-code.

1 Ответ

0 голосов
/ 12 июля 2020

Боже мой. Я забыл поместить приложение в приложение без сохранения состояния. Моя ошибка!

import 'package:flutter/material.dart';

void main() {
  runApp(
    MyApp(),
  );
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Center(
        child: Text("Hello World!"),
      ),
    );
  }
}
...