initDynamicLibrary function

Future<DynamicLibrary> initDynamicLibrary()

Implementation

Future<DynamicLibrary> initDynamicLibrary() async {
  if (Platform.isMacOS || Platform.isIOS) {
    try {
      return await DynamicLibrary.open('$_libName.framework/$_libName');
    } catch (e) {
      // Fallback for macOS where the library might not be in a framework
      return await DynamicLibrary.open('$_libName.dylib');
    }
  } else if (Platform.isAndroid || Platform.isLinux) {
    return await DynamicLibrary.open('lib$_libName.so');
  } else if (Platform.isWindows) {
    return await DynamicLibrary.open('$_libName.dll');
  } else {
    throw UnsupportedError('Unknown platform: ${Platform.operatingSystem}');
  }
}