internalRequest method

  1. @override
Future<String?> internalRequest(
  1. dynamic data
)
override

Implementation

@override
Future<String?> internalRequest(data) async {
  if (data is List && data[0][gType] == gTable) {
    WidgetsFlutterBinding.ensureInitialized();
    /*if (Platform.isWindows || Platform.isLinux) {
  // Initialize FFI
  sqfliteFfiInit();
}
databaseFactory = databaseFactoryFfi;*/

    /*if (isSS() && !Platform.isWindows && !Platform.isLinux) {
  FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler);
  await Firebase.initializeApp(
    options: DefaultFirebaseOptions.currentPlatform,
  );
}*/

    /*ChangeNotifierProvider<DataModel>(
      create: (context) => DataModel(),
      child: MaterialApp(home: ChangeNotifierProviderDemo(data)),
    );*/
    Map mapTable = data[0];
    BuildContext contextTable = mapTable[gContext];
    data[0][gMsgChannel] = methodChannel;

    Widget firstPage = ChangeNotifierProvider<DataModel>(
      create: (context) => DataModel(),
      child: MaterialApp(home: ChangeNotifierProviderDemo(data)),
    );

    Route lastRoute = MaterialPageRoute(builder: (context) => firstPage);

    Navigator.push(contextTable, lastRoute);
    return '';
  } else {
    final version =
        await methodChannel.invokeMethod<String>('internalRequest', data);
    return version;
  }
}