Flutter Firebase Dynami c Ссылки: трансляция события от родительского виджета (app.dart) на дочерние экраны (например, HomeScreen) - PullRequest
0 голосов
/ 25 мая 2020

Я разрабатываю приложение, которое поддерживает ссылки на firebase. Вот тот же метод onLink, который дает нажатие на deeplink.

Это внутри метода инициализации виджета приложения, который является root. Обратитесь к приведенной ниже структуре.

 class App extends StatefulWidget{
     initState(){
         FirebaseDynamicLinks.instance.onLink(
                onSuccess: (PendingDynamicLinkData data) async {
              _handleDeepLink(data.link);
            }, onError: (OnLinkErrorException e) async {
              print('App: Dynamic link error: $e');
            });
         }
     }

     build(){return MaterialApp(home: HomeScreen());}
}

Все, что я хочу, - это каждый раз, когда вызывается onLink, я хочу уведомлять HomeScreen о событии. Возможно, метод переопределения в HomeScreen, например

HomeScreen extends StatefulWidget(){
    build(){}
    override onLink(Uri link){ //handle link}
}

По некоторым техническим причинам я не могу добавить обратный вызов (onLink) в HomeScreen. Есть ли способ уведомить дочерний виджет от родительского виджета или отправить широковещательную рассылку от родительского элемента дочернему при получении ссылки?

...