setOnRenderingStart method
播放器事件回调,首帧显示事件
Implementation
@override
void setOnRenderingStart(OnRenderingStart renderingStart) {
this.onRenderingStart = renderingStart;
FlutterAliPlayerFactory.methodChannel.invokeMethod('setOnRenderingStart',
wrapWithPlayerId(arg: (null != onRenderingStart)));
if (null != onRenderingStart) {
BasicMessageChannel<String> _basicMessageChannel =
BasicMessageChannel<String>(
"listPlayer_onRenderingStart${playerId}",
StringCodec(),
);
// 注册调用 Flutter 端的 callback, 并发送至 Native 端
_basicMessageChannel.setMessageHandler((String? msg) async {
Map<String, dynamic> map = jsonDecode(msg!);
String playerId = map['playerId'];
String method = map['method'];
if (null != onRenderingStart && method == "onRenderingStart") {
this.onRenderingStart!(playerId);
}
return '';
});
}
}