Apple基础(Xcode④-Flutter-Platform Channels)
✅ Swift 端(iOS)
在 ios/Runner/AppDelegate.swift
里加几行:
let channel = FlutterMethodChannel(name: "myapp/channel", binaryMessenger: controller.binaryMessenger)channel.setMethodCallHandler { (call, result) inif call.method == "getX" {result(1) // 直接返回 x = 1} else if call.method == "getAnswer" {result(self.getAnswer()) // 调用方法} else {result(FlutterMethodNotImplemented)}
}
✅ Flutter 端(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