Flutter Event Channel在Android原生端接收不到方法调用怎么办?
我在用Event Channel实现Flutter和Android通信时卡住了。按照文档写了个按钮点击发送消息的代码,但Android端的方法就是没反应,控制台也没有错误提示,这是哪里出问题了?
Flutter端的代码是这样的:
final eventChannel = EventChannel('com.example/counter');
// 按钮点击时调用
void _sendMessage() {
eventChannel.send('increment').then((result) {
print('Received: $result');
}).catchError((error) {
print('Error: $error');
});
}
Android端已经通过registerDefaultBinaryMessenger()初始化,并且用类似这样监听:
EventChannel(eventChannelName).setStreamHandler(...);
但发现连setStreamHandler都没触发。之前检查过方法通道名称是否一致,应该没问题…
直接这样改Android代码:
Flutter端也换成MethodChannel: