У меня есть файл актива, который нужно обработать, прежде чем его можно будет использовать. Этот файл ресурсов будет сильно отредактирован, и я бы хотел, чтобы мне не приходилось перезапускать приложение каждый раз, когда я вношу правку.
Мне известно о существовании метода reassemble
в классе State
. Однако для этого требуется фиктивный виджет, который переопределяет этот метод и помещает его в приложение где-нибудь, чтобы получать уведомления о горячей перезагрузке.
class WdHotReloadNotifier extends StatefulWidget
{
final Function callback;
WdHotReloadNotifier(this.callback);
@override
State<StatefulWidget> createState() => WdHotReloadNotifierState(this.callback);
}
class WdHotReloadNotifierState extends State<WdHotReloadNotifier>
{
Function callback;
WdHotReloadNotifierState(this.callback);
@override
void reassemble()
{
super.reassemble();
callback();
}
@override
Widget build(BuildContext context) {
return Container();
}
}
Тогда я могу использовать это так:
WdHotReloadNotifier((){print("HOT REALOADED 1");}),
WdHotReloadNotifier((){print("HOT REALOADED 2");}),
Однако добавление их на одну страницу означает, что он будет работать, пока страница находится в стеке. А добавление их на несколько страниц означает, что хуки будут выполняться более одного раза.
Есть ли способ в flutter получать глобальные уведомления о горячей перезагрузке?