diff --git a/dev/integration_tests/android_views/lib/motion_events_page.dart b/dev/integration_tests/android_views/lib/motion_events_page.dart index 210ad688839..374877739ad 100644 --- a/dev/integration_tests/android_views/lib/motion_events_page.dart +++ b/dev/integration_tests/android_views/lib/motion_events_page.dart @@ -53,7 +53,7 @@ class MotionEventsBody extends StatefulWidget { class MotionEventsBodyState extends State { static const int kEventsBufferSize = 1000; - late MethodChannel viewChannel; + MethodChannel? viewChannel; /// The list of motion events that were passed to the FlutterView. List> flutterViewEvents = >[]; @@ -137,14 +137,14 @@ class MotionEventsBodyState extends State { .map>((Map e) =>e.cast()) .toList(); await channel.invokeMethod('pipeFlutterViewEvents'); - await viewChannel.invokeMethod('pipeTouchEvents'); + await viewChannel?.invokeMethod('pipeTouchEvents'); print('replaying ${recordedEvents.length} motion events'); for (final Map event in recordedEvents.reversed) { await channel.invokeMethod('synthesizeEvent', event); } await channel.invokeMethod('stopFlutterViewEvents'); - await viewChannel.invokeMethod('stopTouchEvents'); + await viewChannel?.invokeMethod('stopTouchEvents'); if (flutterViewEvents.length != embeddedViewEvents.length) return 'Synthesized ${flutterViewEvents.length} events but the embedded view received ${embeddedViewEvents.length} events'; @@ -196,16 +196,16 @@ class MotionEventsBodyState extends State { void onPlatformViewCreated(int id) { viewChannel = MethodChannel('simple_view/$id'); - viewChannel.setMethodCallHandler(onViewMethodChannelCall); + viewChannel?.setMethodCallHandler(onViewMethodChannelCall); driverDataHandler.handlerCompleter.complete(handleDriverMessage); } void listenToFlutterViewEvents() { channel.invokeMethod('pipeFlutterViewEvents'); - viewChannel.invokeMethod('pipeTouchEvents'); + viewChannel?.invokeMethod('pipeTouchEvents'); Timer(const Duration(seconds: 3), () { channel.invokeMethod('stopFlutterViewEvents'); - viewChannel.invokeMethod('stopTouchEvents'); + viewChannel?.invokeMethod('stopTouchEvents'); }); }