Apple基础(Xcode④-Flutter-Platform Channels)

✅ Swift 端(iOS)

ios/Runner/AppDelegate.swift 里加几行:

Swift 复制代码
let channel = FlutterMethodChannel(name: "myapp/channel", binaryMessenger: controller.binaryMessenger)

channel.setMethodCallHandler { (call, result) in
  if call.method == "getX" {
    result(1) // 直接返回 x = 1
  } else if call.method == "getAnswer" {
    result(self.getAnswer()) // 调用方法
  } else {
    result(FlutterMethodNotImplemented)
  }
}

✅ Flutter 端(Dart)

Dart 复制代码
const channel = MethodChannel('myapp/channel');

// 获取 x
final int x = await channel.invokeMethod('getX');
print(x); // 输出 1

// 调用方法
final String msg = await channel.invokeMethod('getAnswer');
print(msg); // 输出 Hello from Swift
相关推荐
pe7er2 天前
macOS 应用无法打开(权限问题)解决方案
macos·mac
SoaringHeart2 天前
Flutter调试组件:打印任意组件尺寸位置信息 NRenderBox
前端·flutter
九狼2 天前
Flutter URL Scheme 跨平台跳转
人工智能·flutter·github
iOS日常2 天前
iOS设备崩溃日志获取与查看
ios·xcode
_squirrel2 天前
记录一次 Flutter 升级遇到的问题
flutter
Haha_bj2 天前
Flutter——状态管理 Provider 详解
flutter·app
MakeZero2 天前
Flutter那些事-展示型组件篇
flutter
赤心Online2 天前
从零开始掌握 Shorebird:Flutter 热更新实战指南
flutter
wangruofeng2 天前
AI 助力 Flutter 3.27 升级到 3.38 完整指南:两周踩坑与实战复盘
flutter·ios·ai编程
iOS日常3 天前
Xcode 垃圾清理
ios·xcode