【发布时间】:2020-02-06 04:48:52
【问题描述】:
我有一个 Flutter 应用程序,我需要通过 FlutterEventChannel 与原生函数连接,为了获得干净的代码和坐标,我需要两个 FlutterEventChannel。问题是:如何确定何时调用一个事件,它适用于一个事件,但我不知道如何处理 2 个事件。这是我的 AppDelegate.m
#import "AppDelegate.h"
#import <Flutter/Flutter.h>
#import "GeneratedPluginRegistrant.h"
@implementation AppDelegate {
FlutterEventSink _eventSink;
}
- (BOOL)application:(UIApplication*)application
didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
[GeneratedPluginRegistrant registerWithRegistry:self];
FlutterViewController* controller =
(FlutterViewController*)self.window.rootViewController;
FlutterEventChannel* eventFirst = [FlutterEventChannel
eventChannelWithName:@"my_first_event_channel"
binaryMessenger:controller];
[eventFirst setStreamHandler:self];
FlutterEventChannel* eventSecond = [FlutterEventChannel
eventChannelWithName:@"my_second_event_channel"
binaryMessenger:controller];
[eventSecond setStreamHandler:self];
return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
- (FlutterError*)onListenWithArguments:(id)arguments
eventSink:(FlutterEventSink)eventSink {
_eventSink = eventSink;
return nil;
}
- (FlutterError*)onCancelWithArguments:(id)arguments {
[[NSNotificationCenter defaultCenter] removeObserver:self];
_eventSink = nil;
return nil;
}
@end
我想知道如何同时激活 eventFirst 和 eventSecond 并区分它们
【问题讨论】:
标签: ios objective-c flutter channel