-
Notifications
You must be signed in to change notification settings - Fork 29.8k
Closed
Labels
engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.platform-iosiOS applications specificallyiOS applications specifically
Description
Somewhat related to #33099
Users might reasonably think that I better set up all my listeners before running the engine entrypoint so they might end up with a pattern like
let engine = FlutterEngine(name: "blah", project: nil)
engine.binaryMessenger.setMessageHandlerOnChannel("blah", binaryMessageHandler:...)
engine.run(withEntryPoint: nil)But that may fail silently since the binaryMessenger is routing back through the engine which sends it to the IOSPlatformView which isn't created yet.
We might want to turn the FML_DCHECK in front of it into something stricter or let the FlutterBinaryMessengerRelay just hold onto it while the engine is setting up.
By contrast, this issue can't happen on Android since the DartExecutor and FlutterJNI are setup on the FlutterEngine's constructor.
Metadata
Metadata
Assignees
Labels
engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.platform-iosiOS applications specificallyiOS applications specifically