Flutter - EventChannel回调问题

创建EventChannel用来发送状态到flutter端,但是没有走StreamHandler的回调。

onAttachedToEngine(binding: FlutterPluginBinding): void { 
  let context = binding.getApplicationContext() 
  this.context = context 
 
  this.stateChannel = new EventChannel(binding.getBinaryMessenger(), NAMESPACE + '/state') 
  this.stateChannel.setStreamHandler(this) 
 
  this.channel = new MethodChannel(binding.getBinaryMessenger(), NAMESPACE + "/methods"); 
  this.channel.setMethodCallHandler(this) 
} 
 
onListen(_: Any, events: EventSink): void { 
  this.eventSink = events 
} 
 
onCancel(_: Any): void { 
  this.eventSink = null 
}

在初始运行项目时,onListen未触发,热重载flutter之后收到回调,是flutter框架还没弄好吗?

HarmonyOS
2024-11-19 11:06:01
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

​需要在ets发送数据,在dart代码中才能收到回调数据。

ets代码:​

this.eventSink?.success("Success at " + new Date());

dart代码:

final EventChannel _eventChannel = const EventChannel('flutter_blue_plus/methods'); 
 
@override 
void initState() { 
  super.initState(); 
  _onReceiveData(); 
} 
  
_onReceiveData() { 
  _eventChannel.receiveBroadcastStream().listen((event) { 
    setState(() { 
      message = "EventChannel event=$event"; 
    }); 
  }); 
}
分享
微博
QQ
微信
回复
2024-11-19 17:00:09
相关问题
HarmonyOS flutter在ohos如何添加系统
1076浏览 • 1回复 待解决
HarmonyOS Slider值问题
922浏览 • 1回复 待解决
HarmonyOS onAreaChange方法问题
1217浏览 • 1回复 待解决
HarmonyOS 人脸识别问题
1085浏览 • 1回复 待解决
HarmonyOS 活体检测问题
1207浏览 • 1回复 待解决
HarmonyOS flutter plugin开发联问题
1659浏览 • 1回复 待解决
HarmonyOS Scroll组件事件问题
1273浏览 • 1回复 待解决
HarmonyOS onScrollyoffset不准确问题
1530浏览 • 1回复 待解决
HarmonyOS ArkTS接口的案例问题
2675浏览 • 1回复 待解决
HarmonyOS 自定义interface问题
1138浏览 • 1回复 待解决
HarmonyOS 位置权限变更监听问题
1196浏览 • 1回复 待解决
HarmonyOS 传感器时间间隔问题
1028浏览 • 1回复 待解决
HarmonyOS 事件
1279浏览 • 1回复 待解决
interface如何调用
1579浏览 • 1回复 待解决
HarmonyOS Watch没有
986浏览 • 1回复 待解决
HarmonyOS onNewWant未
825浏览 • 1回复 待解决
HarmonyOS Web组件
1472浏览 • 1回复 待解决
HarmonyOS 屏幕亮度变化
969浏览 • 1回复 待解决