runApplication static method

void runApplication(
  1. Widget app, {
  2. Map<String, IFairPlugin>? plugins,
  3. Map<String, String>? jsPlugins,
  4. String? package,
  5. List<String>? baseJsSources,
  6. List<IFairLibraryAdapter>? adapters,
})

Implementation

static void runApplication(
  Widget app, {
  Map<String, IFairPlugin>? plugins,
  Map<String, String>? jsPlugins,
  String? package,
  List<String>? baseJsSources,
  List<IFairLibraryAdapter>? adapters,
}) {
  if (plugins == null) {
    plugins = {};
  }
  if (jsPlugins == null) {
    jsPlugins = {};
  }
  //init 3rd-library adapter
  initFairLibraryAdapter(app, plugins: plugins, jsPlugins: jsPlugins, adapters: adapters);

  // WidgetsFlutterBinding.ensureInitialized();
  FairPluginDispatcher.registerPlugins(plugins);

  if(!kIsWeb && Platform.isAndroid){
    var runtime = Runtime();
    var basicChannel = runtime.getBasicChannel();
    basicChannel.invokeMethod('jsLoadListener').then((value){
      runtime.loadCoreJs(package: package, jsPlugins: jsPlugins, baseJsSources: baseJsSources).then((value) => runApp(app));
    });

  }else{
    Runtime().loadCoreJs(package: package, jsPlugins: jsPlugins, baseJsSources: baseJsSources).then((value) => runApp(app));
  }
}