setupBridge method
bool
setupBridge(
- String channelName,
- void fn(
- dynamic args
)
)
override
Implementation
@override
bool setupBridge(String channelName, void Function(dynamic args) fn) {
final channelFunctions = JavascriptRuntime.channelFunctionsRegistered[_instanceId]!;
if (channelFunctions.containsKey(channelName)) {
return false;
}
channelFunctions[channelName] = fn;
// Register channel in JavaScript
_evaluateJS('''
(function() {
if (!window.__flutter_js_channels) {
window.__flutter_js_channels = {};
}
window.__flutter_js_channels['$channelName'] = function(args) {
// This will be called from sendMessage
return window.__flutter_js_sendMessage('$channelName', JSON.stringify(args));
};
})();
''');
return true;
}