【问题标题】:Flutter MacOS MethodChannel Communication to AppDelegateFlutter MacOS MethodChannel 与 AppDelegate 的通信
【发布时间】:2020-03-23 20:44:11
【问题描述】:

如何在 MacOS Flutter 应用程序的 Swift 端访问 AppDelegate 中的 FlutterBinaryMessenger?在我找到的所有示例中,AppDelegate 只是一个占位符。您需要让 FlutterBinaryMessenger 实例化一个 FlutterMethodChannel 以实际与 Dart 端进行通信。

【问题讨论】:

    标签: swift macos flutter flutter-desktop


    【解决方案1】:

    在当前的 macOS 模板中,FlutterViewController(可让您通过 .engine.binaryMessenger 获取信使)归窗口所有,而不是应用程序所有。如果您想从AppDelegate 访问它,您需要在AppDelegateMainFlutterWindow 之间建立连接。

    【讨论】:

    • 我不得不修改 MainFlutterWindow.swift 文件以将 FlutterViewController 存储在一个静态变量中(我知道这两个方面都很糟糕)但它确实有效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-16
    • 2023-02-10
    • 2019-05-07
    • 2022-01-14
    • 2016-06-06
    相关资源
    最近更新 更多