onInit method

  1. @override
void onInit()
override

Called immediately after the widget is allocated in memory. You might use this to initialize something for the controller.

Implementation

@override
void onInit() async {
  super.onInit();
  updatedData();
  serverNameTextController = TextEditingController();
  rtmpUrlTextController = TextEditingController();
  rtmpKeyTextController = TextEditingController();
  etDurationController=TextEditingController();
  etQuestionController=TextEditingController();
  etOptionsControllers.clear();
  etOptionsControllers.add(TextEditingController());
  etOptionsControllers.add(TextEditingController());
 // etOptionsController=TextEditingController();
  listenToNotifications();
  if( Platform.isAndroid) {
    await GetStorage.init();
  }

  if (showConfirmation) {
    EnxRtc.getPreview();
    // Give preview time to initialize, then increment counter to force widget rebuild
    // Try multiple times to ensure preview shows
    Future.delayed(const Duration(milliseconds: 300), () {
      previewInitCounter.value++;
      isSelect.refresh();
    });
    Future.delayed(const Duration(milliseconds: 800), () {
      previewInitCounter.value++;
      isSelect.refresh();
    });
    Future.delayed(const Duration(milliseconds: 1500), () {
      previewInitCounter.value++;
      isSelect.refresh();
    });
  } else {
    await configureRoom();
  }

  tabController = TabController(length: 3, vsync: this);
  tabController.addListener(() {
    currentTabIndex.value = tabController.index;
  });
}