didPush method

  1. @override
void didPush(
  1. Route route,
  2. Route? previousRoute
)
override

打开页面

Implementation

@override
void didPush(Route<dynamic> route, Route<dynamic>? previousRoute) {
  _history.add(route);
  _poppedRoutes.remove(route);
  try {
    MzanalyticsMybmw.isAutoTrackpage().then((bool? isAutoTrackpage) {
      MzanalyticsMybmw.getManualtrackpage().then((List? blackpvList) {
        if (route.settings.name != null &&
            route.settings.name != '/' &&
            isAutoTrackpage! &&
            !blackpvList!.contains(route.settings.name)) {
          print('sending...');
          Map selfparams = new Map();
          MzanalyticsMybmw.getCdAndCm().then((Map? value) {
            print("读取的自定义事件:" + value.toString());
            if (value != null) {
              selfparams = value;
            }
            //{'pageTitle': route.settings.name;CustomDimMetrics:字典}; {'pageTitle': route.settings.name;字典}

            selfparams['dt'] = route.settings.name;
            print('准备发送的数据:' + selfparams.toString());
            MzanalyticsMybmw.trackPageView(selfparams);
          });
        }
      });
    });
  } catch (e, stack) {
    MzanalyticsLog.p(e.toString() + stack.toString());
  }
  _historyChangeStreamController.add(HistoryChange(
    action: NavigationStackAction.push,
    newRoute: route,
    oldRoute: previousRoute!,
  ));
}