setAdaptiveDecoderGetBackupURLCallback static method
设置取BackupUrl回调。
Implementation
static Future<void> setAdaptiveDecoderGetBackupURLCallback(
String Function(Object, Object, Object) getBackupUrlCallback) async {
const BasicMessageChannel<String> _basicMessageChannel =
BasicMessageChannel<String>(
"getBackupUrlCallback",
StringCodec(),
);
// 注册调用 Flutter 端的 callback,并发送至 Native 端
_basicMessageChannel.setMessageHandler((message) async {
if (message != null) {
Map<String, dynamic> parsedArguments = jsonDecode(message);
Object oriBizType = parsedArguments["param1"];
Object oriCodecType = parsedArguments["param2"];
Object oriURL = parsedArguments["param3"];
String result = getBackupUrlCallback(oriBizType, oriCodecType, oriURL);
// 返回结果给 Native
return result;
}
return "";
});
try {
await methodChannel
.invokeMethod('setAdaptiveDecoderGetBackupURLCallback');
} on PlatformException catch (e) {
print("Failed to register callback: '${e.message}'.");
}
}