tryLoadFlutterNativePortHelpers static method

DynamicLibrary? tryLoadFlutterNativePortHelpers()

Load optional Flutter-owned native-port callback helpers.

These are not part of RACommons; they are platform SDK bridge glue that copies borrowed proto bytes inside native callbacks before posting owned messages to Dart ReceivePorts.

Implementation

static DynamicLibrary? tryLoadFlutterNativePortHelpers() {
  if (!Platform.isAndroid && !Platform.isLinux) {
    return null;
  }
  if (_flutterNativePortHelpersLibrary != null) {
    _logger.debug('Flutter native-port helper library already loaded');
    return _flutterNativePortHelpersLibrary;
  }
  try {
    _flutterNativePortHelpersLibrary = DynamicLibrary.open(
      'librunanywhere_flutter_helpers.so',
    );
    _logger.debug('Flutter native-port helper library loaded');
    return _flutterNativePortHelpersLibrary;
  } catch (e) {
    _logger.debug('Flutter native-port helper library unavailable: $e');
    return null;
  }
}